Python3.5 学习二

时间:2021-08-10 15:27:03

模块/库:

  Python的强大在于丰富的各种库的存在。

  用import方法导入的  分为标准库、第三方库

  程序运行时会先从当前目录下寻找import的模块名的文件,如果没有,则去全局环境变量对应的路径里寻找

  举例几个简单标准库 sys (sys.path\sys.argv)、os(os.mkdir\os.popen("dir").read()) 

关于pyc

  其实Python和java、C#是一样的,也是一种先编译后解释的语言,类似先javac编译 后java运行,只不过Python帮做了编译过程,生成了一个.pyc的预编译后的字节码文件,再向机器解释执行

  程序运行时 内存中有Pycodeobject    就是编译后的内容;当程序运行结束后,解释器会将内容写入硬盘,形成.pyc文件供后续使用

Python数据类型

  数字   (int整型、float浮点型、complex复数)

  布尔值  (真1、假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)