在python中,定義一個函數(shù)要使用def語句,依次寫出函數(shù)名、括號、括號中的參數(shù)和冒號:,然后在縮進(jìn)塊中編寫函數(shù)體,函數(shù)的返回值用return語句返回
成都創(chuàng)新互聯(lián)是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷策劃、微信平臺小程序開發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十多年以來,已經(jīng)為千余家加固各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)。現(xiàn)在,服務(wù)的千余家客戶與我們一路同行,見證我們的成長;未來,我們一起分享成功的喜悅。
def 函數(shù)名([參數(shù)1,參數(shù)2,...,參數(shù)n]):
函數(shù)體
函數(shù)代碼以def關(guān)鍵詞開頭,后接函數(shù)標(biāo)識符名稱和圓括號():
任何傳入?yún)?shù)和自變量必須放在圓括號中間,圓括號之間可以用于定義參數(shù)
函數(shù)的第一行語句可以選擇性的使用文檔字符串-用于存放函數(shù)說明
函數(shù)內(nèi)容以冒號起始,并且縮進(jìn)
return[表達(dá)式]結(jié)束函數(shù),選擇性的返回一個值給調(diào)用方,不帶表達(dá)式的return相當(dāng)于返回None
python 讀寫文件:
data_json = json.dumps(result_r)??#json字符串??
f =open('E://XXX.txt',"a+")? #打開文件,追加+讀寫
f.write(data_json) #?data_json 寫入XXX.txt'文件
f.seek(0)? # 光標(biāo)移動到文件開頭
lines = f.read() # 逐行讀入
f.close() #關(guān)閉文件
mode?打開的方式(r,w,a,x,b,t,r+,w+,a+,U)
r 以只讀方式打開文件。文件的指針會放在文件的開頭。
w 以寫入方式打開文件。文件存在覆蓋文件,文件不存在創(chuàng)建一個新文件。
a 以追加方式打開文件。如果文件已存在,文件指針放在文件末尾。如果文件不存在,創(chuàng)建新文件并可寫入。
r+ 打開一個文件用于讀寫,文件指針會放在文件的開頭
w+ 打開一個文件用于讀寫,文件存在覆蓋文件,文件不存在創(chuàng)建一個新文件。
a+ 打開一個文件用于讀寫,如果文件已存在,文件指針放在文件末尾。如果文件不存在,創(chuàng)建新文件并可寫入。
記憶方法:記住r讀,w寫,a追加,每個模式后加入+號就變成可讀寫。
f =open('E://xxx.txt',"a+")? ? /? ??f=open(r'E://xxx.txt',mode='a+',encoding='UTF-8')
踩坑1??
沒有加encoding='UTF-8',可能會報如下錯:
import requests? #?使用 request函數(shù)需導(dǎo)入 request 庫
import json? ?#使用 JSON 函數(shù)需要導(dǎo)入 json 庫: import json 。
param ={} #請求body
url ='http://域名/api'?
header = {'content-type':'application/json'}
r = requests.post(url,json=param,headers=header)? ? #發(fā)送post請求
result_r = r.json() #請求返回的json傳入對象result_r
data_json = json.dumps(result_r)? #將 Python-result_r對象轉(zhuǎn)為字符串 json.dumps()
文件上傳請求(csv文件)
file_path = "xxx.csv"? ?文件路徑
uploaddata = {"file":open(file_path, "rb")}??
file_upload_result = requests.post(api_URL, files=uploaddata, cookies=cookie)
1 文件讀取全文本操作
在一定場景下我們需要把文本全部內(nèi)容讀取出來,進(jìn)行處理。python提供三種函數(shù)讀取文件,分別是read readline readlines,
read():讀取文件的全部內(nèi)容,加上參數(shù)可以指定讀取的字符。
readline():讀取文件的一行。
readlines():讀取文件的所有行到內(nèi)存中。
不同場景下我們可以選擇不同函數(shù)對文件進(jìn)行讀取。
1.1 方法一
file_name = input("請輸入你要打開的文件的完整路徑及名稱")
file= open(file_name, "r")
txt=file.read()
# 全文本的處理
file.close()
使用read函數(shù)將文件中的內(nèi)容全部讀取,放在字符串變量txt中。這樣操作適合于文本較小,處理簡單的情況,當(dāng)文件較大時,這種方式處理時不合適的。一次性讀取較大的文件到內(nèi)存中,會耗費較多的時間和資源。這時候分批處理效果更好。
1.2 方法二
file_name = input("請輸入你要打開的文件的完整路徑及名稱")
file= open(file_name, "r")
txt= file.read(4)
# 文本的處理while txt != ""txt= file.read(4)
# 批量文本處理
file.close()
這種方法適合于分批處理文本信息,每次批量讀入,批量處理,不會對內(nèi)存造成較大的壓力。
1.3 方法三
file_name = input("請輸入你要打開的文件的完整路徑及名稱")
file= open(file_name, "r")for line infile.readlines():
# 處理每一行數(shù)據(jù)
file.close()
這種處理方式適合處理以行為分割特點的文本,并且文本較小,因為這種處理方式需要一次性把文件所有內(nèi)容讀取到內(nèi)存中。
1.4 方法四
file_name = input("請輸入你要打開的文件的完整路徑及名稱")
file= open(file_name, "r") # 這里的file時文件句柄for line infile:
# 處理每一行數(shù)據(jù)
file.close()
這種方式和方法三中的區(qū)別是分行讀入,逐行處理,不會一次性把文件所有內(nèi)容都讀入到內(nèi)存中,對一些大文件的處理是很有效的。
2 文件寫入文本操作
文件寫入有兩種寫入函數(shù)和一種輔助支持。
write():向文件中寫入一個字符或者字節(jié)流
writelines():將一個元素全為字符串的列表寫入到文件中 需要注意的是,writelines寫入列表元素的時候會把列表元素的內(nèi)容拼接到一起寫入,不會有換行和空格 。
seek(): 輔助寫入函數(shù)offset偏移量參數(shù)代表含義如下
0 - 文件開頭
1 - 當(dāng)前位置
2 - 文件結(jié)尾
2.1 方法一
file_name = input("output.txt", "w+")
text= "hello world!"file_name.write(text)
file.close()
2.2 方法二
file_name = input("output.txt", "w+")
list= ["中午","早上","晚上"]
file_name.writelines(list)for line infile:
# 讀取寫入的數(shù)據(jù),這時候發(fā)現(xiàn)是沒有任何內(nèi)容的
file.close()
我們增加一行代碼就可以讀取到寫入的文件內(nèi)容,利用seek()函數(shù)調(diào)整寫操作指針的位置,可以實現(xiàn)寫操作之后的正常讀取。
file_name = input("output.txt", "w+")
list= ["中午","早上","晚上"]
file_name.readlines(list)
file_name.seek(0) # 調(diào)整寫的指針到文件的開始位置for line infile:
# 讀取寫入的數(shù)據(jù),這時候會讀出一行寫入的數(shù)據(jù)。
file.close()
python中調(diào)用寫文件函數(shù)的方法:
使用“open(‘文件路徑’, ‘w’)”語句就可以打開文件了,然后用“write(內(nèi)容)”函數(shù)就可以將文件寫入進(jìn)去了
示例代碼如下:
執(zhí)行結(jié)果如下:
更多Python知識,請關(guān)注:Python自學(xué)網(wǎng)??!
/python通過解釋器內(nèi)置的open()函數(shù)打開一個文件,并實現(xiàn)該文件與一個程序變量的關(guān)聯(lián),open()函數(shù)格式如下:
/open()函數(shù)包含有兩個參數(shù):文件名和打開模式.當(dāng)文件與執(zhí)行文件在同一文件夾中,直接輸入文件名,亦可輸入文件的完整路徑.打開模式是指以何種方式打開文件,python提供了7種打開模式.
/r/w/x/a模式與b/t/+模式可以組合使用,比如'rt'為文本只讀.'rb'為二級制只讀.
/文件使用結(jié)束后,需要使用close()關(guān)閉文件使用權(quán)限,釋放內(nèi)存.
/當(dāng)文件使用文本格式打開時,讀寫按照字符串方式,采用計算機(jī)當(dāng)前編碼或指定編碼.
/當(dāng)文件以二進(jìn)制方式打開時,讀寫按照字節(jié)流方式.
/python本身將文件讀取為一個行序列.
本文名稱:python寫文件函數(shù),python 文件函數(shù)
URL標(biāo)題:http://muchs.cn/article8/hcgsop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、做網(wǎng)站、服務(wù)器托管、網(wǎng)站改版、網(wǎng)站導(dǎo)航、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)