文件和數據可視化
- 變量—存儲在內存中—定義,使用
- 文件—存儲在硬盤中—打開,關閉,讀和寫數據
- 文本文件:一般由特定編碼的字符組成,內容容易統一展示和閱讀。
- 二進制文件:直接由比特0和比特1組成,用來展示多媒體文件,如png格式的圖片文件和avi格式的視頻文件
文件的打開
#將文本文件打開
python 通過open()函數打開一個文件,並返回一個操作這個文件的變量,語法格式如下:
<變量名>= open(<文件路徑及文件名>,<打開模式>)
.
- 我先在G盤上建了一個"我的日記“的文本文件
- 我在用python打開它
f= open("G:\\我的日記.txt","rt")
print(f.readline())
輸出結果爲:
======================== RESTART: C:/python3.8/3.181.py ========================
今天我可真好看
方法二:把這個文件用二進制方式展開
#b代表二進制文件方式
f1= open("G:\\我的日記.txt","rb")
print(f1.readline())
輸出結果爲:
b'\xbd\xf1\xcc\xec\xce\xd2\xbf\xc9\xd5\xe6\xba\xc3\xbf\xb4'
方法三:
p="G:\\"
f5= open(p+"我的日記.txt","rt")
print(f5.readline())
輸出結果:
======================== RESTART: C:/python3.8/3.181.py ========================
今天我可真好看
#注意:打開一個文件,就要關閉它
#f.close() 是關閉文件的方式
.
打開模式的含義
- “r” 只讀模式,文件不存在則創建該文件,文件存在則完全覆蓋。
- “w” 覆蓋寫模式,文件不存在則創建該文件,文件存在則完全覆蓋。
- “b”二進制文件模式。
- “t" 文本文件模式,默認值
- “+” 與r/w/x/a一同使用,在原功能基礎上增加同時讀寫功能
2.“w” 覆蓋寫模式,
#文件不存在創建文件
>>> f8= open("G:\\我的男孩.txt","wt")
>>> print(f8.read())
>>> f4= open("G:\\我的文件.txt","wt")
>>> print(f4.read())
>
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
print(f4.read())
io.UnsupportedOperation: not readable
>>> f4= open("G:\\我的文件.txt","rt")
>>> print(f4.read())
然後我們打開“我的日記”這個文件,發現被覆蓋了
文件的讀
- read(),所有內容爲字符串的形式進行讀取
- readline(),把當前行的內容字符串的形式進行讀取
- readlines(),把所有數據以每一行爲一個數據組成列表型數據
4.seek(offset),改變當前文件操控指針的位置,offset的值
>>> m= open("G:\\我的男孩.txt","rt")
>>> m.read()
'你好\n餘生請多多指教\nyours girl\n'
>>> m.close()
>>>>> m= open("G:\\我的男孩.txt","rt")
>>> m.readline()
'你好\n'
>>> m.readline()
'餘生請多多指教\n'
>>> m.close()
>>> m= open("G:\\我的男孩.txt","rt")
>>> m.readlines()
['你好\n', '餘生請多多指教\n', 'yours girl\n']
>>> m.close()
文件的偏移量
f.seek() 0代表文件的頭,1文件當前位置,2文件的結尾
文件的寫
- “w” 覆蓋寫模式,文件不存在則創建該文件,文件存在則完全覆蓋。
- “x”創建寫模式,文件不存在則創建該文件,文件存在存在則返回異常 :File ExistsError
- “a” 追加寫模式,文件不存在則創建該文件,文件存在則在原文鍵最後追加內容。
4.write(lines)直接將列表中的各元素寫入文件
>>> f = open('G:\\file_c.txt', 'w')
>>> f.write('當我和擁擠的人羣一同在路上走過時,\n我看見您從陽臺上送過來的微笑,\n我歌唱着,\n忘卻了所有的喧譁')
48
>>> f.close()
>>> f = open('G:\\file_c.txt', 'r')
>>> f.readline()
'當我和擁擠的人羣一同在路上走過時,
我看見您從陽臺上送過來的微笑,
我歌唱着,
忘卻了所有的喧譁'
>>> f.close()