Python文件操作基本流程代码实例
文件操作之基本流程
#文本
近日,上市药企——浙江莎普爱思药业股份有限公司频遭质疑。
12月2日,一篇名为《一年卖出7.5亿的洗脑“神药”,请放过中国老人》的文章称,
多位眼科医生并不认可莎普爱思滴眼液的“白内障防治功效”。质疑者认为,
莎普爱思滴眼液是“假科普,真营销”,通过广告误导患者。
针对质疑,莎普爱思3日晚发布的公告称,
0.5%苄达 赖氨酸滴眼液已于上世纪90年代通过了临床试验,
是一种安全的、有效的抗白内障药物。假的
#‘r'打开,需要编码
f=open('测试','r',encoding='utf8')
print(f.read(10))
#‘w'打开,也需要编码,
f1=open('测试','w',encoding='utf8')
#print(f1.read())
f1.write('hello')
f1.write('world!爱')
f.close()
f1.close()
#‘a'打开,也要编码,和‘w'方式一样,不能够读取
要换行要加\n
#读取一行
s=f.readline()
#读取多行,读取是一个列表
s=f.readlines()
for i inf.readlines(): #有.strip()和没有.strip()的区别
print(i.strip())
number=0
for i inf.readlines():
number += 1
if number == 6:
i= ''.join([i.strip(),'iaiqiu']) #字符串连接,取代万恶的"+"
print(i.strip())
直接用列表操作更快
data=f.readlines()
data[5]=''.join([data[5],'iaiqiu'])
上面都是闹着玩的,以后读文件肯定不会这样,不可能全部读取到内存里,因为内存可能没有那么大。
for i inf:
print(i.strip())
这种才是以后使用的,最优的。
#f.tell()和f.seek()方法,tell()方法返回文件位置
print(f.tell())
print(f.read(10))
print(f.tell())
f.seek(0)
print(f.read(10))
f.close()
#flush()方法,sys.stdout是python编辑框文件,idle也是一个文件
importsys,time
for i inrange(20):
sys.stdout.write('#')
sys.stdout.flush()
time.sleep(0.2)
#truncate()方法,截断,留下前面的。
f.truncate(20)#中文有点问题,像是删除英文字符单位
近日,上市药 :最后那个字,3个字符的,被截成2个没有办法显示了
#r+格式打开文本
1)直接开始写
filename='suibian'
f=open(filename,'r+',encoding='utf8')
#print(f.readline())
f.write('lalalalal')
近日,上市药企——浙江莎普爱思药业股份有限公司频遭质疑。
12月2日,一篇名为《一年卖出7.5亿的洗脑“神药”,请放过中国老人》的文章称,
lalalalal上市药企——浙江莎普爱思药业股份有限公司频遭质疑。
12月2日,一篇名为《一年卖出7.5亿的洗脑“神药”,请放过中国老人》的文章称,
::会有文本被覆盖。
2)读了后再写,在最后追加内容
#w+格式打开
还是先清空文件
#a+格式打开
光标在最后。
用最多的是r+格式打开
#同时管理多个文件对象
with open(filename,'r',encoding='utf8')as f_read,open(filename,'w',encoding='utf8') as f_write:
pass
#01初级代码
#__author: _nbloser
#date: 2017/12/10
# shaoguan = {'仁化', '始兴', '乐昌', '南雄'}
# jiangmeng = {'开平', '蓬江', '台山', '鹤山', '恩平'}
# guangdong_province = {'韶关':shaoguan, '江门':jiangmeng}
# nanchang = {'东湖', '西湖', '新建', '安义', '进贤'}
# jingdezhen = {'昌江', '珠山', '乐平', '浮梁'}
# jiangxi_province = {'南昌': nanchang, '景德镇': jingdezhen}
# provinces = {'广东': guangdong_province, '江西': jiangxi_province} #事先写入文件
f = open('province.txt', 'r', encoding='utf8')
data = eval(f.read())
f.close()
current_layer = data
parent_layer = []
# exit_flag = False
while True:
for i in current_layer:
print(i)
choice = input(">>")
if choice in current_layer:
parent_layer.append(current_layer)
current_layer = current_layer[choice]
elif choice == 'b':
current_layer = parent_layer.pop()
elif choice == 'q': break
elif choice == 'i':
insert = input("输入你要添加的内容:")
current_layer.setdefault(insert, { })
with open('province.txt', 'w', encoding='utf8') as f_write:
f_write.write(str(data))
f_write.flush()
else:
print("查无此项")
总结
以上是 Python文件操作基本流程代码实例 的全部内容, 来源链接: utcz.com/z/313556.html