我正在用JSON格式编写一些数据文件,并希望将一些非常长的字符串值分成多行.使用python的JSON模块我得到了很多错误,无论是使用\还是\n作为转义.
是否可以在JSON中使用多行字符串?这主要是为了视觉上的舒适,所以我想我可以在我的编辑器中翻开自动换行,但我只是有点好奇......
我正在编写一个使用pygame C API的Python C扩展.到现在为止还挺好.现在我想知道如何组织我的源代码,以便我可以在包中包含多个子模块.所有教程都集中在一个.c文件扩展名上.我试着查看一些项目的setup.py文件,但是它们让我的思绪变得复杂,我无法看到树木的森林.
基本上,我有一个扩展,说MyExt.MyExt具有全局功能,有3种类型.我如何组织PyMethodDef列表?我是否必须将所有这些都放在一个列表中?或者,我注意到您传递给setup函数的Extension对象实际上是一个模块数组,因此如何命名模块以使它们都在一个包中并且可以看到彼此?
我的setup.py:
main_mod = Extension('modname',
include_dirs = ['C:\Libraries\Boost\include',
'C:\Libraries\SDL\include',
'C:\Libraries\SDL_image\include'],
libraries = ['libSDL',
'SDL_image'],
library_dirs = ['C:\Libraries\SDL\lib',
'C:\Libraries\SDL_image\lib'],
sources = ['main.cpp',
'Object1.cpp',
'Object2.cpp',
'Etcetera.cpp'])
Run Code Online (Sandbox Code Playgroud)
所以当我调用:setup(name ="Some Human Readable Name,Right?",ext_modules = [main_mod])我可以将其他模块添加到ext_modules列表但是我将第一个参数传递给'Extension'?我是否使用像'mypackage.submodule'这样的点分隔字符串?
更一般地说,如何组织具有多个子模块的C扩展?如果有人能指出一些易于阅读和理解的源代码,那就太棒了.非常感谢!