文件操作之基本流程
#文本
近日,上市药企――浙江莎普爱思药业股份有限公司频遭质疑。
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文件操作基本流程代码实例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!