编写m2.py,脚本内容如下:
#!/usr/bin/python # -*- coding: utf-8 -*- 'its a module test' __author__ = 'mm' import sys #定义函数ft() def ft(x): x=int(x) sum=x*3 print sum #ft(sys.argv[1])
直接运行脚本 ./m2.py 3,返回值 9
在python命令行下运行 import m2,导入m2.py(此为自定义的模块)
运行 dir(m2) ,返回如下:
['__author__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'ft', 'sys']
运行 m2.ft(33),调用m2模块中的ft()函数,返回值 99
==========导入目录============
目录scripts下有文件cpu.py
1.目录scripts下新建空文件 __init__.py (python3下可以从目录下导入)
2.导入:
from scripts import cpu
from scripts import *
可以从py文件中导入Class,Function等直接使用
如果目录scripts在其他目录下,未与当前py文件位于同一目录,则可使用多级os.path.dirname将其目录或父目录加入到当前环境变量
print os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #返回脚本所在目录的父目录,如C:\Django\workplace\sf
sys.path.append('basedir') #只是当前生效。
查看当前环境变量: print sys.path
然后再导入即可。
aa2.py中包含有一个字典d1和一个list l:
d1 = {'k1':1,'k2':222}
l = [1,2,3,8,9]
比如将aa2.py导入后,可以直接使用其字典d1和l,如下:
from aa import aa2
print aa2.d1['k2']
print aa2.l[3]
返回:
222
8