python 文件操作与集合
对文件的操作
1、打开文件,获取句柄
2、根据句柄操作文件
3、关闭文件
现有文档 poem.txt
一天很短,
短得来不及拥抱清晨,
就已经手握黄昏。 一年很短,
短得来不及细品初春殷红窦绿,
就要打点素裹秋霜。 一生很短,
短的来不及享用美好年华,
就已经身处迟暮。 总是经过的太快,
领悟的太晚,
我们要学会珍惜。
珍惜人生路上的亲情、友情、
同事情、同学情、朋友情。
一旦擦身而过,
也许永不邂逅
对文件的基础操作
R = open('poem.txt', 'r') #以只读的发方式打开文件,可以不加'r',默认是只读
first_line = R.readline() #读取文件第一行,返回一个list
print(first_line)
Res = R.read() #获取除了第一行外余下的段落
print(Res)
R.close()
打开文件的模式
r #只读(默认) w #只写【不可读,不存在则创建,存在则删除内容】 a #追加【不可读,不存在则创建,存在则只追加内容】
‘+’ 表示可以同时读写
r+ [可读、可写、可追加,如果打开的文件不存在,则报错] 2w+ [写读模式,已经存在的内容清空,可以读到写的内容] a+ [追加读写模式,不存在则创建,存在则只追加内容]
文件的操作方法
R = open('poem.txt', 'r+', encoding = 'utf-8')
R.readline() #读第一行
R.readable() #判断文件是否可读,返回一个布尔类型
R.writable() #判断文件是否可写,返回一个布尔类型
R.encoding #打印文件编码格式
R.read() #读取所有文件内容,如果文件过大,慎重使用
R.readlines() #读取所有文件,返回一个list,元素是每行内容,慎重使用
R.tell() #获取当前文件的指针指向
R.seek() #把当前文件指向某个指针
R.write('短') #写入当前内容
R.flush() #写入文件后,立即从内存将内容写到磁盘
R.truncate() #清空文件内容
R.readlines(['短', '俄罗斯']) #将一个列表写入
R.close() #关闭文件
大文件的高效操作方法
R = open('poem.txt')
for line in R:
print(line)
with 使用
with open('poem.txt') as P:
for line in P:
print(line)
with open('poem.txt') as Pr, with open('poem_bak.txt', 'w') as Pw:
for line in Pr:
Pw.write(line)
集合:也是一种数据类型,特点是无序
number = [1, 2, 4, 5, 2, 4, 6]
s_number = set(number) #列表转变成集合
number1 = set([1, 2, 4, 5, 2, 4, 6]) #同上
number2 = {'linda', 'bluce', 'jack', 'rose'} #直接定义集合
集合的操作
number1 = {1, 3, 4, 5, 2, 8}
number2 = {2, 4, 9, 1}
number3 = {1, 4, 2}
print(number1.intersection(number2)) #取交集
print(number1 & number2) #取交集
print(number1.union(list2)) #取并集
print(number1 | number2) #取并集
print(number1.difference(number2)) #取差集,number1中存在,number2中不存在
print(number1 - number2) #取差集
print(number3.issubset(number1)) #判断number3是不是number1的子集
print(number1.issuperset(number3)) #判断number1是不是number3的父集
print(number1.isdisjoint(number2)) #判断是否有交集
print(number1.symmetric_difference(number2)) #对称差集,输出两个集合都没有的值
print(number1 ^ number2) #同上
number1.add(12) #添加元素
number1.update([24, 25, 26])
number1.remove(2) #移除
number1.pop() #随机删除,并返回删除元素
number.discard('tom') #存在删除,不存在不做处理
python 文件操作与集合的更多相关文章
- python文件操作和集合(三)
对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 文件基本操作: f = open('file.txt','r') #以 ...
- 初学Python——文件操作第二篇
前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...
- Python基础篇【第2篇】: Python文件操作
Python文件操作 在Python中一个文件,就是一个操作对象,通过不同属性即可对文件进行各种操作.Python中提供了许多的内置函数和方法能够对文件进行基本操作. Python对文件的操作概括来说 ...
- [Python学习笔记][第七章Python文件操作]
2016/1/30学习内容 第七章 Python文件操作 文本文件 文本文件存储的是常规字符串,通常每行以换行符'\n'结尾. 二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用笔 ...
- Python文件操作与函数目录
文件操作 python文件操作 函数 Python函数学习——初步认识 Python函数学习——作用域与嵌套函数 Python函数学习——匿名函数 python内置函数 Python函数学习——递归 ...
- day8.python文件操作
打开和关闭文件 open函数 用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写. file = open(file_name [, access_ ...
- 关于python 文件操作os.fdopen(), os.close(), tempfile.mkstemp()
嗯.最近在弄的东西也跟这个有关系,由于c基础渣渣.现在基本上都忘记得差不多的情况下,是需要花点功夫才能弄明白. 每个语言都有相关的文件操作. 今天在flask 的例子里看到这样一句话.拉开了文件操作折 ...
- Python之路Python文件操作
Python之路Python文件操作 一.文件的操作 文件句柄 = open('文件路径+文件名', '模式') 例子 f = open("test.txt","r&qu ...
- python 文件操作 r w a
python基础-文件操作 一.文件操作 对文件操作的流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 打开文件时,需要指定文件路径和以何等方式打开文件, ...
随机推荐
- C#中的弱引用(WeakReference)
我们平常用的都是对象的强引用,如果有强引用存在,GC是不会回收对象的.我们能不能同时保持对对象的引用,而又可以让GC需要的时候回收这个对象呢?.NET中提供了WeakReference来实现.弱引用可 ...
- TypeConverter使用
如下代码, <Window.Resources> <local:Human x:Key="human" Name="Tester1" Chil ...
- 获取html元素内容
html: <!DOCTYPE ><html> <head> <meta http-equiv="Content-Type" conten ...
- HDU 5881--Tea 思维规律
感谢http://blog.csdn.net/black_miracle/article/details/52567718 题意:有一壶水, 体积在 L和 R之间, 有两个杯子, 你要把水倒到两个杯子 ...
- bzoj 1005 组合数学 Purfer Sequence
这题需要了解一种数列: Purfer Sequence 我们知道,一棵树可以用括号序列来表示,但是,一棵顶点标号(1~n)的树,还可以用一个叫做 Purfer Sequence 的数列表示 一个含有 ...
- bzoj 1001 平面图转对偶图 最短路求图最小割
原题传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1001 整理了下之前A的题 平面图可以转化成对偶图,然后(NlogN)的可以求出图的最小割( ...
- Java易错知识点(2) - 在读取Cookie时除了Key,Value是得不到其他信息的
全文总结: 在读取Cookie,然后操作时,除了getName(),getValue()外,不要妄图得到其他信息,如下方法不会得到值的: cookie.getMaxAge(); cookie.getD ...
- eclipse启动几秒后报错 (一闪而过)
eclipse启动报错,让查看.metadata/.log日志 1 !SESSION 2013-09-23 17:28:28.484 ------------------------------- ...
- Swagger 2.0 摘要
官网地址:http://springfox.github.io/springfox/docs/current/
- ubuntu下中文输入法安装
个人认为ubantu下fcitx比sogo好用 安装fcitx首先到ubantu软件中心下载fcitx两个软件,一个是配置软件,一个是输入法软件 到system setting中language su ...