![Python 程序設(shè)計(jì)語言項(xiàng)目化教程課件項(xiàng)目5 用戶注冊(cè)登陸_第1頁](http://file4.renrendoc.com/view/0e78882f25857545d0eecf45c9d3a144/0e78882f25857545d0eecf45c9d3a1441.gif)
![Python 程序設(shè)計(jì)語言項(xiàng)目化教程課件項(xiàng)目5 用戶注冊(cè)登陸_第2頁](http://file4.renrendoc.com/view/0e78882f25857545d0eecf45c9d3a144/0e78882f25857545d0eecf45c9d3a1442.gif)
![Python 程序設(shè)計(jì)語言項(xiàng)目化教程課件項(xiàng)目5 用戶注冊(cè)登陸_第3頁](http://file4.renrendoc.com/view/0e78882f25857545d0eecf45c9d3a144/0e78882f25857545d0eecf45c9d3a1443.gif)
![Python 程序設(shè)計(jì)語言項(xiàng)目化教程課件項(xiàng)目5 用戶注冊(cè)登陸_第4頁](http://file4.renrendoc.com/view/0e78882f25857545d0eecf45c9d3a144/0e78882f25857545d0eecf45c9d3a1444.gif)
![Python 程序設(shè)計(jì)語言項(xiàng)目化教程課件項(xiàng)目5 用戶注冊(cè)登陸_第5頁](http://file4.renrendoc.com/view/0e78882f25857545d0eecf45c9d3a144/0e78882f25857545d0eecf45c9d3a1445.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
項(xiàng)目要求掌握文件的打開與關(guān)閉操作。掌握文件讀取的相關(guān)方法。掌握文件的寫入方法。熟悉文件的復(fù)制與重命名。了解文件夾的創(chuàng)建、刪除等操作。掌握與文件路徑相關(guān)的操作。文件的打開與關(guān)閉從文件中讀取數(shù)據(jù)向文件寫入數(shù)據(jù)文件的定位讀取目錄操作文件的復(fù)制與重命名文件路徑操作1.文件的打開
文件的打開與關(guān)閉Python對(duì)文件的打開可以使用內(nèi)置函數(shù)open()來打開文本文件,其調(diào)用的一般格式為:file_data=open(file,mode='r',encoding=None)open函數(shù)是打開文件的模塊函數(shù);file是被打開文件的文件名字符串,是必須要填寫的;mode是指文件的訪問模式encoding是表示文件的編碼格式。需要注意的是,此時(shí)open()函數(shù)沒有指明打開文件的路徑,則要求打開的文件需要同程序代碼在同一個(gè)項(xiàng)目文件中。2.文件的關(guān)閉
文件的打開與關(guān)閉Python內(nèi)置的close()方法用于關(guān)閉已打開的文件,該方法沒有參數(shù),直接調(diào)用即可。關(guān)閉后的文件不能再進(jìn)行讀寫操作,否則會(huì)觸發(fā)ValueError錯(cuò)誤。close()方法允許調(diào)用多次。關(guān)閉上一節(jié)中打開的test.txt文件。具體代碼:file_data.close()
從文件中讀取數(shù)據(jù)Python中與文件讀取的方法有3種:010203read()readline()readlines()
從文件中讀取數(shù)據(jù)read()方法:可以從指定文件中讀取指定數(shù)據(jù)。語法格式:read(size)在上述格式中,參數(shù)size用于設(shè)置讀取數(shù)據(jù)的數(shù)量,若參數(shù)size缺省,則一次讀取指定文件中的所有數(shù)據(jù),當(dāng)讀取整個(gè)文件時(shí),它通常用于將文件內(nèi)容放到一個(gè)字符串變量中。【例】使用read()方法讀取文本文件a.txt中的數(shù)據(jù)。file_data=open(“a.txt”)print(“讀取五個(gè)字節(jié)數(shù)據(jù):”)print(file_data.read(5))file_data.close()
從文件中讀取數(shù)據(jù)readline()方法:可以從指定文件中讀取一行數(shù)據(jù)。語法格式:readline()在上述格式中,readline()方法每執(zhí)行一次只會(huì)讀取文件中的一行數(shù)據(jù)?!纠渴褂胷eadline()方法讀取文本文件a.txt中的數(shù)據(jù)。file_data=open(“a.txt”)print(“讀取第1行數(shù)據(jù):”)print(file_data.readline())print(“讀取第2行數(shù)據(jù):”)print(file_data.readline())print(“讀取第3行數(shù)據(jù):”)print(file_data.readline())print(“讀取第4行數(shù)據(jù):”)print(file_data.readline())file_data.close()
從文件中讀取數(shù)據(jù)readlines()方法:可以一次讀取文件中的所有數(shù)據(jù)。語法格式:readlines()在上述格式中,readline()方法在讀取數(shù)據(jù)后會(huì)返回一個(gè)列表,文件中的每一行對(duì)應(yīng)列表中的一個(gè)元素?!纠?】使用readlines()方法讀取文本文件a.txt中的數(shù)據(jù)。file_data=open(“a.txt”)print(“讀取所有數(shù)據(jù):”)print(file_data.readlines())print(“獲取讀取結(jié)果的類型:”)print(type(file_data.readline()))file_data.close()
向文件寫入數(shù)據(jù)write()方法:可以向文件中寫人數(shù)據(jù)。語法格式:write(str)write()函數(shù)中的str表示要寫入的字符串。若字符串寫入成功,write()返回本次寫入文件的字節(jié)數(shù)。打開文件后,每調(diào)用一次write()方法,便會(huì)向文件中追加一行數(shù)據(jù)?!纠?】新建文本文件b.txt,并向其寫入數(shù)據(jù)。file_data=open(“b.txt”,”w+”)file_data.write(“hellopython!\n”)file_data.close()
向文件寫入數(shù)據(jù)writelines方法:用于向文件寫入字符串序列。語法格式:writelines([str])str表示要寫入的字符串序列,該序列可以是任何可迭代的對(duì)象產(chǎn)生字符串,字符串為一般列表。writelines()函數(shù)沒有返回值?!纠?】使用writelines()方法向文件b.txt中寫入數(shù)據(jù)。file_data=open(“b.txt”,encoding=“utf-8”,mode=“a+”)seq=[“python程序設(shè)計(jì)\n”,“文件操作”]file_data.writelines(seq)file_data.close()1.tell()方法
文件的定位讀取在讀寫文件的過程中,如果想知道當(dāng)前的位置,可以使用tell()來獲取。【例】使用tell()方法獲取文件a.txt中的讀取位置。file=open(“a.txt”)print(“當(dāng)前文件讀取的位置:”,file.tell())file.read(10)print(“當(dāng)前文件讀取的位置:”,file.tell())file.close()Python提供用于獲取文件讀、寫位置以及修改文件讀、寫位置的方法tell()與seck()。2.seek()方法
文件的定位讀取seek()方法用于設(shè)置當(dāng)前文件讀、寫位置,語法格式:seek(offset,from)seek()方法的參數(shù)offset表示偏移量,即讀、寫位置需要移動(dòng)的字節(jié)數(shù);參數(shù)from用于指定文件的讀寫位置,該參數(shù)的取值有0、1、2,它們代表的含義分別如下:(1)0:表示在開始位置讀、寫。(2)1:表示在當(dāng)前位置讀、寫。(3)2:表示在末尾位置讀、寫。
文件的定位讀取【例】使用seek()方法修改讀、寫文件a.txt中的位置。file=open(“a.txt”)print(“讀取文件當(dāng)前的位置:”,file.tell())print(“讀取當(dāng)前位置全部文本:”)print(file.read())file.seek(5,0)print(“從開始位置偏移5個(gè)字節(jié)后的位置:”,file.tell())print(“讀取當(dāng)前位置全部文本:”)print(file.read())file.close()1.文件的復(fù)制
文件的復(fù)制與重命名【例】復(fù)制當(dāng)前的文件a.txt副本文件copy_a.txt。file_name=“a.txt”data_file=open(file_name,”r”)#打開文件all_data=data_file.read()#讀取文件new_file=open(“copy_a.txt”,”w”)#創(chuàng)建并打開復(fù)制文件new_file.write(all_data)#寫入數(shù)據(jù)data_file.close()#關(guān)閉a.txt文件new_file.close()#關(guān)閉創(chuàng)建的復(fù)制文件copy_a.txt即創(chuàng)建文件的副本,此項(xiàng)操作的本質(zhì)仍是文件的打開、關(guān)閉與讀、寫。2.文件的重命名
文件的復(fù)制與重命名【例】使用rename()函數(shù)將文件a.txt重命名為new_a.txt。importosos.rename(“a.txt”,”new_a.txt”)Python提供了用于更改文件名的函數(shù)rename(),該函數(shù)存在于os模塊中,使用時(shí)首先要把os模塊導(dǎo)入再調(diào)用rename()。語法格式:rename(原文件名,新文件名)【例】使用rename()函數(shù)將文件夾“文件操作”重命名為“文件夾重命名”。importosos.rename(“文件操作”,”文件夾重命名”)
目錄操作3.獲取目錄的文件列表
1.創(chuàng)建目錄2.刪除目錄1.創(chuàng)建目錄
目錄操作模塊中的mkdir()函數(shù)用于創(chuàng)建目錄,其語法格式如下:os.mkdir(path,mode)【例】設(shè)計(jì)一個(gè)功能用于判斷目錄是否存在,如果目錄不存在,執(zhí)行創(chuàng)建目錄操作同時(shí)在該目錄下創(chuàng)建一個(gè)c.txt文件并寫入數(shù)據(jù);如果目錄存在,提示用戶“目錄已存在”。importospath=input(“請(qǐng)輸入目錄名:”)#判斷輸入的目錄是否存在flag=os.path.exists(path)ifflagisFalse:
os.mkdir(path)new_file=open(os.getcwd()+”\\”+path+”\\”+”c.txt”,”w”)new_file.write(“hellopython!”)print(“數(shù)據(jù)寫入成功!”)new_file.close()else:
print(“該目錄已存在”)2.刪除目錄
目錄操作使用Python內(nèi)置模塊shutil中的rmtree()函數(shù)可以刪除目錄,其語法格式如下:rmtree(path)【例】使用rmtree函數(shù)刪除test_dir目錄importosimportshutil#刪除前查看要?jiǎng)h除的目錄是否存在print(os.path.exists(“text_dir”))shutil.rmtree(“text_dir”)#刪除后查看要?jiǎng)h除的目錄是否存在print(os.path.exists(“text_dir”))3.獲取目錄的文件列表
目錄操作os模塊中的listdir()函數(shù)用于獲取文件夾下文件或文件夾名的列表,該列表以字母順序排序其語法格式如下:listdir(path)【例13】使用listdir()函數(shù)獲取指定目錄下文件列表。importospath=r”C:\Users\Administrator\Desktop\源代碼\第五章文件操作”print(os.listdir(path))參數(shù)path表示要獲取的目錄列表。
文件路徑操作4.路徑的拼接3.檢測(cè)路徑的有效性
1.相對(duì)路徑與絕對(duì)路徑2.獲取當(dāng)前路徑1.相對(duì)路徑與絕對(duì)路徑
文件路徑操作文件相對(duì)路徑指某文件(或文件夾)所在的路徑與其他文件(或文件夾)的路徑關(guān)系,絕對(duì)路徑指盤符開始到當(dāng)前位置的路徑。os模塊提供了用于檢測(cè)目標(biāo)路徑是否是絕對(duì)路徑的isabs()函數(shù)和將相對(duì)路徑規(guī)范化為絕對(duì)路徑的abspath()函數(shù),下面分別講解這兩個(gè)函數(shù)。1.相對(duì)路徑與絕對(duì)路徑
文件路徑操作【例】使用isabs()函數(shù)判斷提供的路徑是否為絕對(duì)路徑。importosprint(“當(dāng)前文件路徑是否為絕對(duì)路徑:”,os.path.isabs(“new_a.txt”))print(“當(dāng)前文件路徑是否為絕對(duì)路徑:”,os.path.isabs(“F:\python\new_a.txt”))isabel函數(shù):當(dāng)目標(biāo)路徑為絕對(duì)路徑時(shí),isabs()函數(shù)會(huì)返回True,否則返回False。1.相對(duì)路徑與絕對(duì)路徑
文件路徑操作【例】使用abspath()函數(shù)可以將“new_a.txt”目標(biāo)路徑規(guī)范化為絕對(duì)路徑importosprint(“當(dāng)前文件絕對(duì)路徑是:”,os.path.abspath(“new_a.txt”))abspath()函數(shù):當(dāng)目標(biāo)路徑為相對(duì)路徑時(shí),使用abspath()函數(shù)可以將目標(biāo)路徑規(guī)范化為絕對(duì)路徑。2.獲取當(dāng)前路徑
文件路徑操作【例】getcwd()函數(shù)用于獲取當(dāng)前運(yùn)行程序的路徑。importosprint(“當(dāng)前文件絕對(duì)路徑是:”,os.path.abspath(“new_a.txt”))當(dāng)前路徑即文件、程序或目錄當(dāng)前所處的路徑。os模塊中的getcwd()函數(shù)用于獲取當(dāng)前路徑。3.檢測(cè)路徑的有效性
文件路徑操作【例】使用exists()函數(shù)判斷“F:\python\new_a.txt”路徑是否存在importospath=“F:\python\copy_a.txt”print(‘路徑是否存在:”,os.path.exists(path))os模塊中的exists()函數(shù)用于判斷路徑是否存在,如果當(dāng)前路徑存在,exitsts()函數(shù)返回True,返回Fale。4.路徑的拼接
文件路徑操作【例】使用join()函數(shù)將路徑“python項(xiàng)目”與“項(xiàng)目”進(jìn)行拼接。importospath=“F:\python\copy_a.txt”print(“路徑是否存在:”,os.path.exists(path))os.path模塊中的join()函數(shù)用于拼接路徑,其語法格式如下:os.path.join(path1,path2)上述格式中,參數(shù)path1、path2表示要拼接的路徑。用戶注冊(cè)登陸項(xiàng)目實(shí)現(xiàn)用戶登錄功模塊分為管理員登錄和普通用戶登錄,在用戶使用軟件時(shí),系統(tǒng)會(huì)先判斷用戶是否為首次使用:若是首次使用,則進(jìn)行初始化,否則進(jìn)入用戶類型選擇。用戶類型分為管理員和普通用戶兩種,若選擇管理員,則直接進(jìn)行登錄;若選擇普通用戶,先詢問用戶是否需要注冊(cè),若需要注冊(cè),先注冊(cè)用戶再進(jìn)行登錄。用戶注冊(cè)登陸項(xiàng)目實(shí)現(xiàn)結(jié)合程序功能,設(shè)計(jì)程序接口。用戶登錄模塊應(yīng)包含的主要函數(shù)及其功能分別如下:initial():信息初始化user_select():用戶選擇user_registe
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《氣體動(dòng)理論》課件
- 校園網(wǎng)學(xué)生公寓網(wǎng)絡(luò)項(xiàng)目需求分析報(bào)告
- DB37-T 4491-2021 三倍體單體牡蠣淺海筏式養(yǎng)殖技術(shù)規(guī)范
- 《元代染織工藝》課件
- 2025年度煤炭公司股權(quán)轉(zhuǎn)讓暨環(huán)保升級(jí)合作協(xié)議
- 保姆協(xié)議書集錦-@-1
- 《資產(chǎn)管理》課件
- 專屬約定寫合同范本
- 工藝美術(shù)顏料行業(yè)發(fā)展趨勢(shì)預(yù)測(cè)考核試卷
- 家用紡織品市場價(jià)值鏈分析考核試卷
- 9這點(diǎn)挫折算什么(課件)-五年級(jí)上冊(cè)生命與健康
- 價(jià)格監(jiān)督檢查知識(shí)培訓(xùn)課件
- 駐場保潔方案
- 中國心理衛(wèi)生協(xié)會(huì)家庭教育指導(dǎo)師參考試題庫及答案
- 智能廣告投放技術(shù)方案
- 知識(shí)產(chǎn)權(quán)保護(hù)執(zhí)法
- 高質(zhì)量社區(qū)建設(shè)的路徑與探索
- 數(shù)字化時(shí)代的酒店員工培訓(xùn):技能升級(jí)
- 足球守門員撲救技巧:撲救結(jié)合守護(hù)球門安全
- 《學(xué)術(shù)規(guī)范和論文寫作》課件全套 第1-10章 知:認(rèn)識(shí)研究與論文寫作 - 引文規(guī)范
- 起重機(jī)更換卷筒施工方案
評(píng)論
0/150
提交評(píng)論