# Python 模块

> 原文： [https://pythonspot.com/python-modules/](https://pythonspot.com/python-modules/)

## 模块化编程

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

## 模块内容

要显示模块中的可访问函数（和包含的变量），可以使用以下代码：

```py
#!/usr/bin/env python
import sys

print(dir(sys))

```

结果：

```py

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

```

## 创建一个模块

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

创建一个名为`test.py`的文件（您的模块）

```py
#!/usr/bin/env python

def add(a,b):
    return a+b

```

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

```py
from test import *

print('hello')
print(add(5,2))

```