一故俐、 文件的打開與關(guān)閉
? ? ? ? ? ?1衔彻、文件的打開
? ? ? ? ? ? ? ? 格式:f = open(‘file’,mode='r',encoding='utf-8')
? ? ? ? ? ? ? ? ? ? ? ? ? ? file:文件? mode:打開文件的方式 默認(rèn)是讀(r)
? ? ? ? ? ? ? ? ? ? ? ? ? ? encoding:文件的編碼
? ? ? ? ? ? 2、文件的關(guān)閉
? ? ? ? ? ? ? ? f.close()
? ?
二、 寫數(shù)據(jù)(write)
? ? ? ? 格式:
? ? ? ? ? ? ? 對(duì)象=open("文件",w)
? ? ? ? ? ? ? 對(duì)象.write("寫入數(shù)據(jù)")
? ? ? ? ? ? ? 對(duì)象.close?
? ? 總結(jié):如果文件不存在那么創(chuàng)建,如果存在那么就先清空涛癌,然后寫入數(shù)據(jù) ? ? ? ?
三、 ?讀數(shù)據(jù)(read)
? ? ? ? 格式:
? ??????????對(duì)象 = open("文件",r)
????????????變量 = 對(duì)象.read()? # 括號(hào)里可以傳num類型,表示讀取幾個(gè)數(shù)據(jù),不傳,默認(rèn)讀取全部
????????????print(變量)
? ? ? ? 總結(jié):
如果用open打開文件時(shí)送火,如果使用的"r"拳话,那么可以省略,即只寫open('test.txt')如果沒有文件种吸,打開報(bào)錯(cuò)弃衍,存在該文件才能操作如果文件中存在中文顯示,會(huì)出現(xiàn)亂碼需要添加encoding='utf-8'????open(‘test.txt’,”r”,encoding='utf-8')
四坚俗、 讀數(shù)據(jù)(readlines)
? ? ? ? readlines把整個(gè)文件中的內(nèi)容進(jìn)行一次性讀取镜盯,并且返回的是一個(gè)列表岸裙,其中每一行的數(shù)據(jù)為一個(gè)元素
? ? ? ? 格式:
? ??????????對(duì)象 = open("文件",'r')
????????????變量 = 對(duì)象.readlines()
????????????print(變量)
五、 讀數(shù)據(jù)(readline)
? ? ? ? readline可以按照行的方式把整個(gè)文件中的內(nèi)容進(jìn)行一行一行的讀取
? ? ? ? 格式:
? ??????????對(duì)象 = open("文件",'r')
????????????變量 = 對(duì)象.readline()
????????????print(變量)
? ? ? ? 如:
? ??????????f = open('a.txt','r',encoding='utf-8')
????????????whileTrue:
? ? ? ? ? ? ? ? buf = f.readline()
? ? ? ? ? ? ? ? if buf:
????????????????????print(buf)
????????????????else:
????????????????????break
六速缆、?追加(a)
? ? ? ? ? 格式:
? ??????????????對(duì)象 = open("",a)
????????????????對(duì)象.write("寫入數(shù)據(jù)")
????????????????對(duì)象.close()
? ? ? ? ? 總結(jié):(追加)形式打開文件哥桥,如果文件不存在則創(chuàng)建并從頭添加寫入的內(nèi)容,存在則原有數(shù)據(jù)后追加數(shù)據(jù)
七激涤、 讀數(shù)據(jù)(rb)
? ? ? ? 格式:
? ??????????with open("二進(jìn)制文件","rb") as 對(duì)象:
????????????????變量 = 對(duì)象.read()
????????????????print(變量)
? ? ? ? 注:這種格式不需要手動(dòng)關(guān)閉文件
? ? ? ? 總結(jié):如果沒有文件,打開報(bào)錯(cuò)判呕,存在該文件才能操作
文件和文件夾的操作
文件的相關(guān)操作
? ? 1倦踢、文件重命名
? ? ? ? 格式:
? ????????????import os
? ? ? ? ? ? ? os.rename("需要修改的文件名","新文件名")
? ? ? 2、刪除文件
? ? ? ?格式:
????????????import os
????????????os.remove("文件名")
? ? 文件夾的相關(guān)操作
? ? ? ? 1侠草、 創(chuàng)建文件夾
? ? ? ? ? ? ?格式:
? ? ? ? ? ? ? ? import os
? ? ? ? ? ? ? ? os.mkdir('文件夾名稱')? ? ? ?
? ? ? ? 2辱挥、 獲取當(dāng)前目錄
? ? ? ? ? ?????格式:
? ? ? ? ? ? ? ? ?import os
? ? ? ? ? ? ? ? ?os.getcwd()
? ? ? ?二、異常
? ? ? ? ? ? 格式:
? ? ? ? ? ? ? ? try:
? ? ? ? ? ? ? ? ? ? 可能發(fā)生異常的代碼
? ? ? ? ? ? ? ? except 異常對(duì)象 as 變量名:
? ? ? ? ? ? ? ? ? ? print(e)? # 獲取異常信息
? ? ? ? ? ? ? ? else:
? ? ? ? ? ? ? ? ? ? 不發(fā)生異常執(zhí)行的代碼
? ? ? ? ? ? ? ? finally:
? ? ? ? ? ? ? ? ? ? 無論是否發(fā)生異常都會(huì)執(zhí)行的代碼
模塊? ? ??
? ? Python 模塊(Module)边涕,是一個(gè)Python文件晤碘,以.py 結(jié)尾,包含了Python 對(duì)象定義和Python語句
模塊的引入
? ? 1功蜓、使用 import 關(guān)鍵字
?例:
? ? ? ?import random
?調(diào)用:
? ? ?random.randint(a,b)
?2园爷、from 模塊 import 方法
? 例:
? ? ? from random import randint
? 調(diào)用:
? ? ? ?randint(a,b)
3、from 模塊 import * 【了解】
總結(jié):次方法會(huì)導(dǎo)入這個(gè)模塊全部方法式撼,不方便使用