1、開啟檔案
open()
f=open('haha') #開啟乙個名為haha的txt檔案,不寫字尾預設txt檔案,其他型別檔案必須寫字尾
2、read()讀取檔案內容
print(f.read()) #閱讀模式,獲取裡面所有的內容,該模式只能讀取內容,不能對其進行修改。
有時候會產生該錯誤,表示gbk解碼時報錯,存在一些字元不能使用gbk來解碼(例如中文) 所以我們可以在open()中再新增乙個引數 encoding='utf-8' 就可以解決該問題。
若檔案不存在執行,會報錯。
在讀取路徑時,比如c:\\niu\\desktop 這種,open在開啟檔案時會把c:\\niu 認為裡面有乙個\n,所以我們可以在檔案路徑前加乙個r,比如f=open(r'c:\\niu\\desktop\haha') 表示原字元,不需要轉義。
print(f.readline()) #讀取一行資料
print(f.readlines())#獲取檔案裡面所有的資料,每一行資料放到乙個list裡面
print(f.read()) #獲取全部檔案內容
依次執行上面三種函式,讀取時,readline讀取第一行,readlines 讀取剩餘內容,read讀取不到內容,產生這種原因,是因為檔案指標的原因。
檔案指標:開啟檔案,預設指標在前,readline 讀取第一行,讀取完後,指標讀取到第二行,readlines表示讀取全部,所以將檔案所有內容都讀取完,指標讀取到最後,再使用read讀取的時候,就讀取不到任何東西了。
3、write()寫
f.write() 修改檔案內容,該模式只能修改不能讀,若使用此函式,則需要去資料夾看,謹慎使用該函式,修改後無法撤回。
f.write('kkkkk')
names=['lxy','zyf','zxd','lcs']
for name in names:
print(name+'\n') #依次讀出來,然後換行
writelines([list]) #傳乙個list,然後把list裡面的每乙個元素寫入到檔案中
1 names=['lxy','zyf','zxd','lcs']換行的話,可以在陣列裡面加\n2 writelines(names)
names=['lxy\n','zyf\n','zxd\n','lcs\n']
4、檔案的模式:
讀模式 r:預設讀模式,只能讀,不能寫,檔案不存在會報錯;
寫模式 w:寫模式,只能寫,會覆蓋以前檔案裡面的內容,不能讀,檔案不存在會新建;
讀寫模式 r+:可以讀,可以寫,檔案不存在會報錯;
寫讀模式 w+:可以讀,可以寫,檔案不存在會建立;
追加模式 a:只能寫,不能讀,檔案不存在會建立,不會清空以前的內容;
追加模式 a+:讀寫模式,檔案不存在會建立,能讀能寫,不會清空以前的內容。
只要沾上r,檔案不存在都會報錯;
只要沾上w,檔案內容肯定會被清空。
5、追加模式 a+
f=open('hh','a+')
f.seek(0) #移動指標到最前面
f.close() #關閉檔案
day3 python 集合 檔案
字典是無序的,列表是有序的 a zhangsan print a 1 a 2 222 字串不能賦值集合 set 把不同的元素組成一起形成集合 info 1,2,34,5,6,7 info set info print info 或info 1,2,34,5,6,7 se set info print...
Day3 python基礎資料型別
目錄 1 基礎資料型別概覽 2 int 數字型 3 bool 4 str 5 for迴圈 1 int 數字型 主要用於計算 2 str 字串 存少量資料 3 bool 反饋真 假 4 list 列表 可存各種資料型別,操作方便 5 tuple 元組 可讀列表 6 dic 字典 配對鍵值對 7 set...
Day3 Python資料型別與運算
f int input 請輸入華氏溫度 c f 32 1.8 print d華氏溫度是 2d攝氏溫度 f,c 2.求解 次 方程ax b 0,程式提示 使用者輸 a和b的值,然後輸出方程的根。程式運 效果如下。請輸 一次 方程的係數a 2 請輸 一次 方程的常量 b 6 次 方程2x 6 0 的根是...