模块/库:java
Python的强大在于丰富的各类库的存在。app
用import方法导入的 分为标准库、第三方库 函数
程序运行时会先从当前目录下寻找import的模块名的文件,若是没有,则去全局环境变量对应的路径里寻找学习
举例几个简单标准库 sys (sys.path\sys.argv)、os(os.mkdir\os.popen("dir").read()) 编码
关于pyc指针
其实Python和java、C#是同样的,也是一种先编译后解释的语言,相似先javac编译 后java运行,只不过Python帮作了编译过程,生成了一个.pyc的预编译后的字节码文件,再向机器解释执行code
程序运行时 内存中有Pycodeobject 就是编译后的内容;当程序运行结束后,解释器会将内容写入硬盘,造成.pyc文件供后续使用内存
Python数据类型utf-8
数字 (int整型、float浮点型、complex复数)rem
布尔值 (真一、假0)
字符串
字节型 BYPES 其与字符串能够相互转换 encode(编码) 用于字符串转换为字节型 decodes(解码) 用于将字节型转换为字符串 最好在函数参数中指定字符集 ‘utf-8’
举例:print(teststring.encode(encoding='utf-8').decode(encoding='utf-8'))
列表list
举例:names=['1','2','3','4','5']
方法:append、insert、clear、count、extend、pop、remove、reverse、del、index、sort、
copy(只复制了第一层的值,以及第二层的指针,PS:若是不用copy而是直接=,对于列表数据类型只是赋值了指针地址)、
另(深copy彻底复制,不要瞎用):import copy
copy.deepcopy
列表循环 for i in names:
print i
列表的切片 names[1:3] names[-3:-1] names[-2:] 字符串也能够切片
按步长切片 print(names[::2])
列表浅copy方法三种:
import copy
name2=copy.copy(names)
names2=names[:]
names2=list(names)
最后综合性练习,作了一个购物车程序,很受益
get一个小技能: 在输出时,高亮显示 print(“\033[31;1m%s\033[0m” % salary) 格式只能死记硬背咯~~~
元祖 (又叫只读列表)
方法:count、index
各类字符串操做函数,本身学习练习,带__的函数属内部函数,不须要研究也用不到
字典
增删改查方法、查找尽可能使用info.get("xxx"),不会出错。
判断是否有这个键,“xxx” in info 返回布尔型
setdefault 去查找键,若是找到则返回,若是找不到,则建立该键
update 合并字典,有则更新,没有则建立
.item() 字典转列表
fromkeys()建立初始化字典用,可是和以前列表的copy同样,若是多层,是引用的指针地址,不方便使用的,必定注意哦
循环输出
【推荐】for i in info:
print(i,info[i])
for k,v in info.item():
print(k,v)