python--集合和文件基本操作
集合
# 集合天生就能去重,集合也是无序的 集合也是{ } 但是空集合定义特殊
s=set() #空集合
s2 = set('1234445566778')
print(s2)
s3 = {'1','1','3','4','5','6','7','9'}
d = {'k':'v'} #这个是字典
交集 并集 差集
就是两个集合相同的地方
print(s3 & s2) #取交集
print(s3.intersection(s2)) #取交集
并集:就是把两个集合合并到一起,然后去重
print(s2 | s3) #取并集
print(s2.union(s3)) #取并集
s4 = {1,2,3}
s5 = {1,4,6}
差集
在一个集合里有,在另一个集合里面没有的
S4里面有,s5里面没有的
取一个集合存在,另一个不存在的元素
print( s4 - s5) #取差集
print(s4.difference(s5)) #取差集
对称差集
俩集合里面都没有
去掉俩集合里面都有的
print(s4 ^ s5)
print(s4.symmetric_difference(s5))
集合的增删改查
s4.add('ss') #加元素
s4.pop()#随机删一个
s4.remove('ss')#指定删除哪个
s4.update({1,2,3}) #把另外一个集合加进去
s4.isdisjoint(s5)#如果没有交集的话返回true,如果有就返回false
print(s4.isdisjoint(s5)) false
打开文件
#open打开文件(python3) file()--python2里面的打开文件方法
f = open('D:/work/python/djl-20180310/lianxi/day4笔记/歌词',encoding='utf-8') #打开文件,utf-8 中文
读文件
print(f.read())
print(f.readline()) #只读取一行内容
print(f.readlines()) #把文件里每一行放到一个list里面
f.write('adsfa') #写入
读模式 r 读写 r+
1、不能写
2、文件不存在时会报错
写模式 w 写读模式 w+
1、文件不存在的时候会帮你自动创建新文件
2、打开一个已经存在的文件,他会覆盖以前文件的内容
不能读
追加模式 a 追加读模式 a+
1、文件不存在的话,会帮你新建文件
2、打开一个已经存在的文件,不会情况,末尾增加
3、不能读
c = open('duan','a+',encoding='utf-8')
print(c.read())
print(c.write('段佳林追加'))
print(c.read())
只要有r,文件不存在就报错
只要有w,都会清空原来的内容
有a 不存在可以添加,有的话直接追加到末尾,但是读不到内容
文件指针
f = open('歌词','a+',encoding='utf-8')
a模式默认文件指针在末尾
f.seek(0) #移动文件指针到最前面
print('read读的内容',f.read())
f.write('这是我写的3')
文件指针:用来记录文件到底读到哪了
f= open('duan','a+',encoding='utf-8')
f.write('hahhah ')
f.seek(0) #移动文件指针后只能读,写的时候还是在文件末尾写
print(f.read())
1、先随机产生一些手机号
2、写到文件里面
f = open('phonesno','w',encoding='utf-8')
num = input('请输入手机号个数:')
for i in range(int(num)):
start = '1870042'
n4_num= str(random.randint(1,9999)).zfill(4)
phone_num = start + n4_num
f.write(phone_num+'\n')
f.close()
自动关闭文件
with open('geci','a+') as f:
for line in f:
pass
python--集合和文件基本操作的更多相关文章
- python学习9—文件基本操作与高级操作
python学习9—文件基本操作与高级操作 1. 文件基本操作 打开文件,获得文件句柄:f = open('filename',encoding='utf-8'),open会查询操作系统的编码方式,并 ...
- Python 目录和文件基本操作
今天在写一个小工具的过程中发现对目录和文件的基本操作不是很熟,特此把遇到的常用操作总结汇总下. 获取当前路径:os.getcwd() 目录操作:1.创建目录:os.mkdir('目录名')2.创建多级 ...
- python学习笔记:文件操作和集合(转)
转自:http://www.nnzhp.cn/article/16/ 这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句 ...
- Python小白的发展之路之Python基础(二)【字符串、列表、集合、文件操作】
列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表.元组操作 (1)列表 列表是可变的(mutable)——可以改变列表的内容,这不同于字符串和元组,字符串和元组都是不 ...
- python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...
- Day2 - Python基础2 列表、字符串、字典、集合、文件、字符编码
本节内容 列表.元组操作 数字操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 ...
- python基础之 列表、元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...
- Python【第二课】 字符串,列表,字典,集合,文件操作
本篇内容 字符串操作 列表,元组操作 字典操作 集合操作 文件操作 其他 1.字符串操作 1.1 字符串定义 特性:不可修改 字符串是 Python 中最常用的数据类型.我们可以使用引号('或&quo ...
- (转)Python中集合(set)的基本操作以及一些常见的用法
原文:http://blog.51cto.com/10616534/1944841 Python除了List.Tuple.Dict等常用数据类型外,还有一种数据类型叫做集合(set),集合的最大特点是 ...
- NO.3:自学python之路------集合、文件操作、函数
引言 本来计划每周完成一篇Python的自学博客,由于上一篇到这一篇遇到了过年.开学等杂事,导致托更到现在.现在又是一个新的学期,春天也越来越近了(冷到感冒).好了,闲话就说这么多.开始本周的自学Py ...
随机推荐
- DataTable运用
DataTable dataDis.AsEnumerable().Sum(bu => bu["QtyPlan"].ConvertInt32()); ndata.TDefSty ...
- 解决centos ping不通外网
先确认三件事: 一.ip 二.网关 三.dns 一就不说了,设置好本地ip和掩码就行了,二网关 添加默认网关,命令:route add defaule gw 192.168.1.1 这是 你用ro ...
- pytorch中的前项计算和反向传播
前项计算1 import torch # (3*(x+2)^2)/4 #grad_fn 保留计算的过程 x = torch.ones([2,2],requires_grad=True) print(x ...
- Web前端三大主流框架是什么?Web前端前景与就业形势
近十年以来,IT行业发展火热,衍生了很多新职业,例如UI设计师.开发工程师.软件测试工程师等等,在众多备受瞩目的新生职业中,Web前端工程师是其中的一员.那么Web前端三大主流框架是什么呢? 一.We ...
- Discuz的文件目录解析
最近在学习discuz,对这个不了解的 可以参考 http://www.cnblogs.com/hgj123/p/4641845.html
- 探索ORACLE之ASM概念(完整版)
探索ORACLE之ASM概念(完整版) 本文出自https://www.jb51.net/article/43527.htm ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出 ...
- Linux open() 一个函数,两个函数原型
open在手册中有两个函数原型, 如下所示: int open(const char *pathname, int flags); int open(const char *pathname, int ...
- Linux系统管理第五次作业 LVM逻辑卷 磁盘配额
1.为主机增加80G SCSI 接口硬盘 2.划分三个各20G的主分区 [root@localhost ~]# fdisk /dev/sdf 欢迎使用 fdisk (util-linux 2.23.2 ...
- ubuntu(物理机)连接ARM开发板
非虚拟机 ubuntu下连接开发板 首先安装超级终端minicom sudo apt-get install minicom 安装完minicom以后,需要将开发板和电脑进行物理连接.需要使用一条网线 ...
- QQ靓号资料空白且空间开通教程
QQ靓号资料空白且空间开通教程 首先你需要两个QQ号第一个是普通QQ号第二个是去这个官方网站注册一个QQ免费靓号https://ssl.zc.qq.com/v3/index-chs.html?type ...