python(笔记0x001)
导入模块
在Python中可以使用下面两种方法导入模块或模块中的函数。
import 模块名
import 模块名 as 新名字
from 模块名 import 函数名
#传递任意数量的参数#
在Python中,函数可以具有人一个参数,不必在声明函数时对所有参数进行定义,使用可变长参数函数,其所有参数都保存在一个元组中,在函数中可以使用for循环来处理。声明声明函数时,如果在参数明前加上*号,代表参数是一个可变长参数。代码如下:
1 def mylistappend(* list): #定义可变长参数函数 2 l=[] 3 for i in list: 4 l.extend(i) #将参数列表合并在一起 5 return l 6 ... 7 >>>a=[1,2,3] #定义列表 8 >>>b=[4,5,6] 9 >>>c=[7,8,9] 10 >>>mylistappend(a,b) 11 [1,2,3,4,5,6] 12 >>>mylistappend(a,b,c) #调用函数,传递三个参数 13 [1,2,3,4,5,6,7,8,9]
Python在哪里找模块?
很多时候编写好的模块只有Python找到才能被导入,脚本运行出错提示ImportError:No module named mymodule这是Python解析器没有找到模块的原因。而在导入模块时候,Python解析器会现在当前目录查找导入的模块,如果没有找到,就会从sys模块中的path变量指定的目录查找导入模块。如果以上多有路径的都没有找到导入模块那么就会输出错误信息。
1 >>>import sys 2 >>>sys.path 3 ['', 'C:\\Windows\\system32\\python27.zip', 'C:\\Python27\\DLLs', 'C:\\Python27\ 4 \lib', 'C:\\Python27\\lib\\plat-win', 'C:\\Python27\\lib\\lib-tk', 'C:\\Python27 5 ', 'C:\\Python27\\lib\\site-packages', 'C:\\Python27\\lib\\site-packages\\gtk-2. 6 0', 'C:\\Python27\\lib\\site-packages']
以上输出的就是Python的模块查找路径
可以使用脚本语句添加模块的查找路径。。如下:
1 import os 2 import sys 3 modulepath=os.getcwd()+'\\module' #获取当前路径 4 sys.path.append(modulepath) #添加路径到默认模块路径 5 print(sys.path) 6 import mymodule
包管理
在Python中使用目录名,然后再使用模块名导入需要的模块。在每个目录中都必须包含一个“__init__.py”(两个下划线)的文件。"__init__.py"可以是个空文件,作用仅仅就是表示该目录是一个包。
"__init__.py"的主要作用是设置“__all__”变量多包涵的包初始化所需的代码。对于在from中使用"*"通配符导入包内所有名字时,在"__init__.py"中设置"__all__"变量可以保证名字的正确导入。
比方说现在需要导入A目录的B目录下的a.py模块。那么在Python中可以这样写:
from A.B import a import A.B.a
包的内部引用
如果是C目录的b.py需要引用A目录的B目录中的a.py,那么可以这样写
from A.B import a
浙公网安备 33010602011771号