文件操作之基本流程
#文本
近日,上市藥企——浙江莎普愛思藥業股份有限公司頻遭質疑。
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=0for 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,timefor 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)讀了后再寫,在最后追加內容
新聞熱點
疑難解答