ホームページ  >  記事  >  バックエンド開発  >  Pythonカスタムモジュールの詳しい解説

Pythonカスタムモジュールの詳しい解説

高洛峰
高洛峰オリジナル
2017-03-26 18:06:441443ブラウズ

Python はカスタムモジュールを追加できます

方法 1:

echo 'export PYTHONPATH='/root/pythondiy/' >> /root/.bashrc # 此目录为你模块的路径
# 然后使用sys模块查看环境变量
import sys
sys.path          # 返回一个列表
['',
 '/usr/local/bin',
 /root/pythondiy',
 '/usr/local/lib/python27.zip',
 '/usr/local/lib/python2.7',
 '/usr/local/lib/python2.7/plat-linux2',
 '/usr/local/lib/python2.7/lib-tk',
 '/usr/local/lib/python2.7/lib-old',
 '/usr/local/lib/python2.7/lib-dynload',
 '/usr/local/lib/python2.7/site-packages',
 '/usr/local/lib/python2.7/site-packages/setuptools-28.8.0-py2.7.egg',
 '/usr/local/lib/python2.7/site-packages/pip-9.0.1-py2.7.egg',
 '/usr/local/lib/python2.7/site-packages/IPython/extensions',
 '/root/.ipython']

方法 2:

sys.path.append('/root/pythondiy') #この方法は一時的に有効です

2. ファイルの差分を開きます

open('/etc/passwd').read()                        # 返回全文的是str
open('/etc/passwd').readlines()                   # 返回全文的是一个list
open('/etc/passwd').readline()                    # 每一次读取一行,返回str

3 . カスタムモジュール呼び出し

vim wc.py
#!/usr/bin/python
 
from sys import argv
 
def wc(s):
    chars = len(s)
    words = len(s.split())
    lines = s.count('\n')
    return  lines,words,chars
 
if __name__== '__main__':                      # 只有在执行此脚本时才调用函数。
    with open(argv[1]) as file1:
        print wc(file1.read())
         
vim copy_wc.py
import

4. 実行結果

[root@peng pyth]# python wc.py  /etc/passwd    # 返回的是passwd文件统计
(23, 31, 1066)
[root@peng pyth]# python copy_wc.py            # 返回的是hosts文件统计
(2, 10, 158)

5. モジュールパッケージのインポート

# 需要在包里创建一个__init__.py空文件,也可以是包的描述
touch __init__.py
ipython
from pyth import wc                            # 这样就导入一个模块包

以上がPythonカスタムモジュールの詳しい解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。