列表生成器
l=[]
for i in range(100):
l.append('egg%s'%i)
print(l)
l=['egg%s'%i for i in range(100) ]
print(l)
l=['egg%s'%i for i in range(100) if i>10](可加判断但是不能用else)
print(l)
生成器表达式
l=('egg%s'%i for i in range(100))(用于所要生成的列表值过大)
什么叫模块?
模块就是一系统功能的集合体,在python中,一个py文件就是一个模块,比如module.py 其中模块名为module
使用模块 __import__
import 模块名(不能加py)
首次导入模块发生了 三件事,
1.创建一个模块的名称空间
2.执行模块对应为文件,将产生的名字存放于1中的名称空间
3.在当前执行文件中的拿到一个模块名,该模块名指向1的名称空间
强调:之后的导入会直接引用第一层次导入的结果,不会重复执行
import qwer
qwer.age()
qwer.age()
为模块起别名
import qwer as f
f.age()
一行导入多个值
import qwer,tyui,opas(不推荐使用)
from...import...与import的前两件事一摸一样
from qwer import age,
age()
可直接调用,但问题实容易与当前执行文件中相同的名字冲突
from qwer import age,change
age()
money=11111
change()
print(money)
money=11111
from qwer import age,change
age()
change()
print(money)
from ... import *(全部)
__all__=[' ',' ']
在文件被直接执行的情况下,等于'__main__'
在文件被导入的情况下,等于模块名
模块的搜索路径
内存中已加载的模块--->内置模块--->sys.path路径中包含的模块
强调:sys.path的第一个路径是当前
添加路径 import sys
sys.path.append()