#檔案(記住每次操作都要關閉檔案.close())
#簡單的讀取操作
data=open("
yesterday
").read() #
開啟檔案讀出整個檔案的內容
(data)
如果報錯gbk,則修改為data=open("
yesterday
",coding="
utf-8
").read()
#檔案操作
#-*-coding:utf-8 -*-
'''data=open("yesterday").read() #開啟檔案(若檔案不存在,自動建立乙個新的檔案)
print(data)
'''#
讀檔案(此時相當於把整個檔案已經讀到記憶體中了)
f = open("
yesterday
",'r
') #
檔案控制代碼(簡單記為檔案物件)
data=f.read()
(data)
'''data2=f.read()
print(data2) #此時data2變數沒有輸出,理解為檔案指標停留在第乙個變數讀取完檔案後停留在末尾,
#data2讀取的時候並沒有回到檔案的最開始位置,所以讀不到檔案內容
'''#
寫'w',建立乙個檔案,覆蓋原來存在的檔案
f = open("
yesterday2
",'w')
f.write(
"這是我啊\n")
f.write(
"sss\n")
f.close()
#f = open("
yesterday2
",'a')
f.write(
"四十四")
f.close()
#指定行數輸出檔案內容
#readline() 輸出一行檔案內容
f = open("
yesterday
",'r')
print(f.readline()) #
每次讀一行
for i in range(5): #
用for迴圈讀取前5行
(f.readline())
#readlines() 將檔案內容轉換為列表形式
f = open("
yesterday
",'r
')
for index,line in enumerate(f.readlines()): #
用enumerate給予下標,並第十行不列印檔案內容
if index==9:
print("
-------------")
continue
print(line.strip()) #
strip是清除預設換行
#記憶體中每次只存在檔案中的一行資料(較為高效的方法)(較為常用)
count=0
f=open("
yesterday
",'r')
for line in f: #
f相當於迭代器
if count==9:
print("
-------")
count+=1
continue
(line.strip())
count+=1
#tell()獲取當前檔案指標位置(以字元計數的方式返回字元數)
#f.seek()將檔案指標移到某處,括號中可以填寫字元數,表示將指標移到指定字元數處
f=open("
yesterday
",'r')
print(f.tell()) #
此時輸出到螢幕是0
(f.readline())
print(f.tell()) #
此時值不為0
f.seek(0) #
將檔案指標移到檔案首處
(f.readline())
'''此時檔案又可以進行第二次讀,若沒有seek()函式,
第二次讀出的是空內容,因為檔案指標在進行第一次讀完後位於檔案末尾處了。
'''#
f.encoding 檢視檔案編碼格式
#f.flush() 實時重新整理檔案資料到硬碟上
#f.truncate(10) 無論是否有seek()或者任意的檔案指標的位置,規定從檔案開頭截斷到指定字元數,
python之路 day6 檔案處理
一.檔案 1.檔案就是作業系統提供給應用程式來操作硬碟虛擬概念,使用者或應用程式通過操作檔案,可以將自己的資料永久儲存下來。2.操作流程 1.開啟檔案,得到檔案控制代碼並賦值給乙個變數 f open xx.txt mode encoding 2.通過控制代碼對檔案進行操作 唯讀f.read r模式 ...
python學習DAY6(檔案操作二 讀寫)
讀寫 r 較為常用 f open yesterday r 此時用f.write 的時候不會覆蓋原來檔案的內容,追加到檔案末尾 u表示在讀取時,可以將 r n r n自動轉換成 n 與r或r 模式同使用 ru r u 寫讀 w 不常用 追加讀 a rb 以二進位制讀取乙個檔案 wb 以二進位制的方式寫...
Linux打卡Day6 檔案系統
檔案系統 1 作業系統通過檔案系統管理檔案及資料,磁碟或分割槽需要建立檔案系統後才能夠為作業系統使用,建立檔案系統的過程又稱格式化 1 沒有檔案系統的裝置又稱之為裸 raw 裝置 2 常見的檔案系統有fat32 ntfs ext2 ext3 ext4 xfs hfs等 3 檔案系統之間的區別 日誌 ...