import 引入一个模块儿
from 模块儿名 import 函数/类/变量 引入某个函数或者类
from 模块儿名 import * 从模块儿引入所有的
as 别名 例如 import random as rm
如果两个模块儿包含相同的方法,后引入的会覆盖前面的
测试模块儿:
if __name__=='__main__':# 由python解释器主动执行的 被导入时是不执行的
pass
__all__ = ["允许外部调用的方法名"]
包:一个目录就是一个包
python3导入直接使用 import package.module
python2还需要创建一个__init__.py的文件
包的发布
1、在包的同级目录添加setup.py
2、在文件中添加
from distutils.core import setup
setup(name="package", version="1.0", description="描述", author="作者",
py_modules=['my_package.module1', [my_pacakge.module1])
3、在setup目录下执行 python3 setup.py build
4、生成压缩包
python3 setup.py sdist
包的安装
1、找到模块儿压缩包
2、解压
3、执行 python3 setup.py install
给程序传参数
import sys
参数存放在sys.argv变量里面
列表推导式
使用轻量级的循环创建列表
a = [1 for i in range(1,10)] = [1,1,1,1,1,. ..]
a = [i for i in range(1,10)] = [1,2,3,4,5...]
a = [i**2 for i in range[1,10]] = [1,3,9,16....]
set 集合类型
列表(list) a=[1,2,3,4,5] 按照先后顺序 有下标位 元素可以重复 可变类型
元组(tuple)a=(1,2,3) 有先后顺序 有下标位 元素可以重复 不可变类型
字典(dict) a={key:value} 没有先后顺序 没有下标 key值不能重复 可变类型
集合(set) a={1,2,3,4,5} 没有先后顺序 没有下标 不可重复 可变类型
使用set可以快速去重list