檔案讀取、sys、hashlib
阿新 • • 發佈:2021-09-16
⽂件讀取和操作
我們對⽂件的操作,⼀般情況下,分為三種情況,分別是:開啟⽂件,操作⽂件(讀寫等),關閉⽂件。在Python的語⾔了,提供了對⽂件的操作⽅法,預設open()是開啟⽂件並且是隻讀模式,事實上開啟和關閉⽂件⽐較很好的理解,操作⽂件,那麼操作⽂件的前提開啟⽂件,開啟⽂件就涉及到以什麼樣的模式來開啟⽂件,⽐如讀,寫,只讀,只寫,⼆進位制等等模式,具體總結的⻅如下:
r:只讀模式
w:只寫模式【不可讀,不存在就建立,存在就清空內容】
x:只寫模式【不可讀,不存在就建立,存在就報錯】
a:增加模式【可讀,不存在就建立,存在只增加內容】
""" 1、先查詢檔案是否存在 2、如果檔案不存在,那麼就建立檔案 3、如果存在,如果是w的模式,那麼檔案裡面的原有內容會清空,然後寫進去新的內容""" f=open('login.txt','w') f.write('hello xian') f.close()
"""a增加""" f=open('login.txt','a',encoding='utf-8') f.write('hello 中國') f.close()
"""r讀取檔案的前提是檔案必須存在""" f=open('login.txt','r',encoding='utf-8') # print("讀取檔案所有的內容:",f.read()) # print("讀取檔案的第一行:",f.readline()) for item in f.readlines():# """對檔案內的所有內容迴圈輸出 strip()取消空格""" print(item.strip()) f.close()
'''with山下文,內部會進行檔案的關閉''' with open('login.txt','r',encoding='utf-8') as f: print(f.read())sys實戰 sys提供對直譯器使⽤或維護的⼀些變數以及與直譯器強烈互動的函式的訪問。 經常會遇到我們被調⽤的模組是找不到的,這個時候我們可以使⽤sys把它新增到搜尋的路徑中
import sys import os base_dir=os.path.dirname(os.path.dirname(__file__hashlib實戰 hashlib⾥⾯主要會涉及到md5的加密演算法的)) sys.path.append(os.path.join(base_dir,'mokuai')) for item in sys.path: print(item) from first import login login()
from urllib import parse import hashlib import time def sign(): dict1={"name":"wuyikai","age":18,"address":"xian","time":time.time()} data=sorted(dict1.items(),key=lambda item:item[0]) data1=parse.urlencode(data) print(data1) sign() def sign(): dict1={"name":"wuyikai","age":18,"address":"xian","time":time.time()} data=sorted(dict1.items(),key=lambda item:item[0]) data1=parse.urlencode(data) m=hashlib.md5() m.update(data1.encode('utf-8')) print(m.hexdigest()) sign() address=xian&age=18&name=wuyikai&time=1631762658.98396 61576d30a79d1b1de163e1546af749d6