python_day6.2
一:集合
1.集合是用{}来表示(字典也是用花括号来表示的)。>>> num={} >>> type(num) <class 'dict'> >>> num2={1,2,3,4} >>> type(num2) <class 'set'>
2.集合里面的元素唯一:
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
>>> num2={1,1,2,3,3,4} >>> num2 {1, 2, 3, 4}View Code
去掉列表中重复的元素的两种方法:

>>> num1=[1,1,2,3,4,4,5] >>> temp=[] >>> for each in num1: if each not in temp: temp.append(each) >>> temp [1, 2, 3, 4, 5]View Code
可以利用集合去掉列表中重复的元素。(因为集合的唯一性)
>>> num1=list(set(num1)) >>> num1 [1, 2, 3, 4, 5]
3.集合不支持索引。
4.创建集合的两种方法:一是直接把一堆元素用花括号括起来;二是使用set()工厂函数
>>> set1=set([1,2,3,4,5]) >>> set1 {1, 2, 3, 4, 5}View Code
5.怎么访问集合中的元素:
可以使用for把集合中的数据一个个读取出来;可以通过in和not in判断一个元素是否在集合中已经存在
>>> 1 in num1 True
6.add()方法,和remove()方法

>>> num2 {1, 2, 3, 4} >>> num2.add(9) >>> num2 {1, 2, 3, 4, 9} >>> num2.remove(1) >>> num2 {2, 3, 4, 9}View Code
7.不可变集合
>>> num3=frozenset([1,2,3,4]) >>> num3 frozenset({1, 2, 3, 4})
在不可变集合中add添加元素报错。
二:文件

>>> f=open('E:\\python\\record.txt') >>> f.read(5) 'Help ' >>> f.tell() 5 >>> for eachline in f: print(eachline)View Code
1.打开模式 和执行的操作(写地址,双斜杠,转义字符)
‘r’以只读方式打开文件(这也是默认的方式) 2.文件对象方法 f.close() 关闭文件f.read(size=-1) 从文件读取size个字符,当未给定size或给定负值的时候,读取剩余的
所有字符,然后作为字符串返回
f.readline()
以写入模式打开,如果文件存在,则在末尾追加写入
f.write(str)
将字符串str写入文件
f.writelines(seq)
向文件写入字符串序列seq,
f.seek(offset,from)
在文件中移动文件指针,从from(0代表文件起始位置,1代表当前位置,2代表文件末尾)
偏移offset个字节
f.tell()返回当前在文件中的位置
三:模块 模块是一个包含所有你定义的函数和变量的文件,其后缀名是py.模块可以被别的程序调用,以使用该模块中的函数等功能。
>>> secret=random.randint(1,10) Traceback (most recent call last): File "<pyshell#97>", line 1, in <module> secret=random.randint(1,10) NameError: name 'random' is not defined >>> import random >>> secret=random.randint(1,10) >>> secret 3
1.OS模块:
python是跨平台的语言,os模块中关于文件/目录常用的函数使用方法。>>> import os >>> os.getcwd() 'D:\\Program Files\\python' >>> os.listdir('E:\\') ['$RECYCLE.BIN', 'JavaProject', 'python', 'System Volume Information', 'Test', 'WeiXinProject', 'WeiXinProject.zip', '学习资料']getcwd() 返回当前工作目录。
chdir(path) 改变工作目录
listdir(path='.') 列举指定目录中的文件名('.'代表当前目录 '..'表示上一级目录)
mkdir(path) 创建单层目录,如该目录已存在抛出异常 makedirs(path) 递归创建多层目录,如果该目录已存在抛出异常 remove(path) 删除文件 rmdir(path) 删除单层目录,如果该目录非空则抛出异常 removedirs(path)递归删除目录,从子目录到父目录逐层尝试删除,遇
遇到非空则抛出异常 rename(old,new) 将文件old重命名为new
system(command) 运行系统的shell命令
os.curdir 指代当前目录
os.pardir 指代上一级目录 os.path 模块就不一一列举了。
2.pickle模块。可以把数据很长的字典放入一个文件中。
>>> import pickle >>> my_list=[123,3.14,'wwq'] >>> pickle_file=open('my_list.pkl','wb') >>> pickle.dump(my_list,pickle_file) >>> pickle_file.close() >>> my_list [123, 3.14, 'wwq'] >>> pickle_file=open('my_list.pkl','rb') >>> my_list2=pickle.load(pickle_file) >>> my_list2 [123, 3.14, 'wwq']

更多精彩