python文件操作

文件的基本操作 1.打開文件 2.讀寫文件 讀:將文件內(nèi)容寫入內(nèi)存 寫:將內(nèi)存的數(shù)據(jù)寫入文件中 3.關閉文件

在python操作文件通常使用4個函數(shù)(方法) 1.open 打開文件,返回文件操作的對象 2.read 讀文件,將文件內(nèi)容寫入內(nèi)存 3.write 寫文件 4.close 關閉文件

文件的打開方式只要有兩種
第一種,使用open直接打開

#路徑有絕對路徑和相對路徑
 f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
#對于文件操作來說,默認模式只是一個r,只讀!!!
 file_text = f.read()

第二種,使用語法糖,with關鍵字

#文件的打開方式 with語法糖,不用手動 close
with open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8') as f1:
    print(f1.read())

對文件進行操作:

  • r:只讀操作(默認模式)
  • w:只寫操作,如果文件存在,首先會清空源件的數(shù)據(jù),文件指針放在文件頭.如果文件不存在,則創(chuàng)建一個新文件
  • a:追加操作,文件指針放在文件的末尾
  • r+:以讀寫的方式打開文件,文件指針放在文件的頭部。如果文件不存在,會拋出異常。
  • w+:以讀寫的方式打開文件,文件指針放在文件開頭,如果文件存在,首先會清空源件的數(shù)據(jù)。
  • rb:以二進制(字節(jié))的格式打開一個文件,文件指針放在文件的頭部。如果文件不存在,會拋出異常。
  • wb:以二進制(字節(jié))的格式寫入一個文件,文件指針放在文件開頭,如果文件存在,首先會清空源件的
  • a+:以讀寫的方式打開文件

文件指針--光標,標記了從那個位置開始讀取數(shù)據(jù)

# f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8',"w")
# f = open("C:/Users/dj-yz/Desktop/text.txt","a",encoding='utf-8')
# #文件指針--光標,標記了從那個位置開始讀取數(shù)據(jù)
# #第一次打開文件時,通常文件指針會指向文件的開始位置
# f.write("未婚")
# f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
# file_text = f.read()
# file_text2 = f.read()
# #光標移動到數(shù)據(jù)的末尾,再次讀取內(nèi)容為空
# print(file_text2)

r+對文件進行讀寫操作

f = open("C:/Users/dj-yz/Desktop/text.txt","r+",encoding='utf-8')
file_text = f.read()
file_text

w+讀的時候會清空文件中的數(shù)據(jù),a+則不會

f = open("C:/Users/dj-yz/Desktop/text.txt","w+",encoding='utf-8')
file_text = f.read()
print(file_text)
f.close

讀取一行,設置光標位置,指定讀取字符的數(shù)量

#讀取一行
f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
#設置光標位置
f.seek(2)
# 指定讀取字符的數(shù)量
f.read(6)
f2 =  f.readline()
print(f2)
f.close
# 讀取所有行
f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
f2 =  f.readlines()
print(f2)

對文件進行復制操作

f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
f2 = open("C:/Users/dj-yz/Desktop/text_copy.txt","w",encoding='utf-8')
content = f.read()
f2.write(content)
f.close()
f2.close()

如果文件比較大,可以使用循環(huán),一行一行寫入

f = open("C:/Users/dj-yz/Desktop/text.txt",encoding='utf-8')
f2 = open("C:/Users/dj-yz/Desktop/text_copy.txt","w",encoding='utf-8')

while True:
    content = f.readline()
    if not content:
        break
    f2.write(content)
    
f.close()
f2.close()

文本和字節(jié)的轉(zhuǎn)換

#文本和字節(jié)的轉(zhuǎn)換
str = "hello"
#encode -  將字符串進行編碼生成對應的字節(jié)
s1 = str.encode('utf-8')
#decode -  解碼:將字節(jié)轉(zhuǎn)為字符串
s2 =s1.decode("gbk")
print(s2)
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 文件操作: 打開文件:Python內(nèi)置了一個打開文件的函數(shù),open()函數(shù),用來打開一個文件,返回新打開文件的描...
    往日_07ae閱讀 586評論 0 0
  • Python文件操作 準備工作: 1) 使用python來讀取文件是非常簡單的操作,我們使用open()函數(shù)來打開...
    小學弟_閱讀 578評論 0 0
  • 讀寫文件是最常見的IO操作。Python內(nèi)置了讀寫文件的函數(shù),用法和C是兼容的。 讀寫文件前,我們先必須了解一下,...
    大紅中閱讀 138評論 0 0
  • 第五章 5.1存儲 1.文件 我們知道,py中的數(shù)據(jù)都保存在內(nèi)存中,當電腦斷電時,就好像患了失憶癥內(nèi)存中的數(shù)據(jù)就會...
    人生苦短_我用Python閱讀 530評論 0 1
  • 一、作用 思考:文件操作包含什么?答:打開、關閉、讀、寫、復制。。。思考:文件操作的作用是什么?答:讀取內(nèi)容、寫入...
    ThreeYear_xin閱讀 337評論 0 1

友情鏈接更多精彩內(nèi)容