Python学习笔记(3)

时间:2022-06-27 20:31:18
 

1.元组

元组的定义符号是() ,元素定义与列表完全一致.不同的是元组的内容是不可变的.

2.字典

字典里面的内容是无序的.

字典的元素组成形式是 key:value

key的定义规则:key是不可变的.并且在字典中是唯一的.

value的定义规则:任意类型

字典的操作:

 #查询
dic[key]  如果有空值就报错
dic.get('key') 如果有空值返回none #增加/修改
dic['gender'] = 'famale'
dic['name'] = 'Tom'
以上操作字典里没有此元素则增加到字典.如果有则修改值 #删除
del dic['key']
12 dic.pop('key')

字典的内建函数:

 #清空字典
dic.clear() #根据后面给的参数快速生成字典
dic.fromkeys() #取key值.无key返回none
dic.get() #生成k,v形式的元组
dic.items() #把所有的key组成一个列表
dic.keys() #把所有的value组成一个列表
dic.values() #删除指定的key
dic.pop() #随机删除一个key
dic.popitems() #增加key,当key存在,则返回key,不存在则根据后面的值添加到字典内
dic.setdefault() #合并两个字典.如果有重复key.后来居上
dic.update()

字典的深浅copy.

浅copy

当需要copy一个字典的时候,简单的copy只会copy第一层的数据(key和value),后面的则是直接引用的老的数据,通过id()可以查看.

深copy

需要导入一个copy模块.使用copy模块的deepcopy方法.可以重新生成一个完全独立的字典.

3.集合

set保存一组不重复的值.

set的方法

 set1&set2              #求交集
set1-set2           #求差集
set1.difference_update(set2) #求差集
set1|set2           #求并集
set1^set2           #求对称交集
set1<=set2           #是否为子集
set1>=set2           #是否为父集
set.update           #序列化更新
set.add()  #整体加入更新
set.pop()          #随机删除一个值
set.remove()           #删除指定值,无值报错
set.discard()          #删除指定值,无值为none
set.clear()        #清空集合

4.文件处理

open('filename','r') #以只读方式打开一个文件

文件的处理方法
 #常用方法
f.encodeing() #打印字符编码
f.closed() #判断文件是否关闭
f.fileno() #返回操作系统的文件编号
f.flush() #强制刷新数据到硬盘
f.isatty() #判断文件是否为tty接口文件
f.name() #打印文件名
f.seek() #移动光标的位置
f.tell() #打印光标所在的位置
f.truncate() #截断 #增
f=open('Myfile','w') #创建写模式
f=open("myfile",'a') #追加写模式
f=open("myfile",'r+') #读写模式
f=open("myfile",'w+') #写读模式
f=open("myfile",'a+') #追加读模式
f.close() #保存和关闭文件 #删/改
目前没有方法直接编辑文件的方法
写脚本逐行读取文件.把需要的内容另存为一个新的文件.
再重命名回来. #读取
f.readline() 读一行
f.readlines() 读整个文件