原文: https://pythonspot.com/python-modules/

模块化编程

在进行编程时,该软件可以迅速扩展为大型代码库。 为了管理复杂性,我们可以使用类,函数和模块。

模块内容

要显示模块中的可访问函数(和包含的变量),可以使用以下代码:

  1. #!/usr/bin/env python
  2. import sys
  3. print(dir(sys))

结果:

  1. ['__displayhook__', '__doc__', '__egginsert', '__excepthook__', '__name__', '__package__', '__plen', '__stderr__', '__stdin__',
  2. '__stdout__', '_clear_type_cache', '_current_frames', '_getframe', '_mercurial', '_multiarch', 'api_version', 'argv',
  3. 'builtin_module_names', 'byteorder', 'call_tracing', 'callstats', 'copyright', 'displayhook', 'dont_write_bytecode',
  4. 'exc_clear', 'exc_info', 'exc_type', 'excepthook', 'exec_prefix', 'executable', 'exit', 'flags', 'float_info', 'float_repr_style'
  5. , 'getcheckinterval', 'getdefaultencoding', 'getdlopenflags', 'getfilesystemencoding', 'getprofile', 'getrecursionlimit',
  6. 'getrefcount', 'getsizeof', 'gettrace', 'hexversion', 'long_info', 'maxint', 'maxsize', 'maxunicode', 'meta_path', 'modules',
  7. 'path', 'path_hooks', 'path_importer_cache', 'platform', 'prefix', 'py3kwarning', 'pydebug', 'setcheckinterval', 'setdlopenflags'
  8. , 'setprofile', 'setrecursionlimit', 'settrace', 'stderr', 'stdin', 'stdout', 'subversion', 'version', 'version_info',
  9. 'warnoptions']

创建一个模块

可以按照以下步骤创建自己的模块:

创建一个名为test.py的文件(您的模块)

  1. #!/usr/bin/env python
  2. def add(a,b):
  3. return a+b

然后创建一个名为app.py的文件:

  1. from test import *
  2. print('hello')
  3. print(add(5,2))