日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python文本文档_python 文本文件操作

發(fā)布時(shí)間:2023/12/15 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python文本文档_python 文本文件操作 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文件操作三步走:打開、讀寫、關(guān)閉。

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

file參數(shù)指定了被打開的文件名稱。

mode參數(shù)指定了打開文件后的處理方式。

encoding參數(shù)指定對(duì)文本進(jìn)行編碼和解碼的方式,只適用于文本模式,可以使用Python支持的任何格式,如GBK、utf8、CP936等等。

文件打開模式

例:向文本文件中寫入內(nèi)容,然后再讀出

s = 'Hello world\n文本文件的讀取方法、文本文件的寫入方法\n'

with open('sample.txt','w') as fp: #默認(rèn)使用cp936編碼

fp.write(s*5)

#生成的文件放在.py文件所在文件夾

with open('sample.txt') as fp:

print(fp.read())

E:\pytho_pycharm\venv\Scripts\python.exe E:/pytho_pycharm/prac.py

Hello world

文本文件的讀取方法、文本文件的寫入方法

Hello world

文本文件的讀取方法、文本文件的寫入方法

Hello world

文本文件的讀取方法、文本文件的寫入方法

Hello world

文本文件的讀取方法、文本文件的寫入方法

Hello world

文本文件的讀取方法、文本文件的寫入方法

Process finished with exit code 0

例:將一個(gè)CP936編碼格式的文本文件中的內(nèi)容全部復(fù)制到另一個(gè)使用UTF8編碼的文本文件中。

#將一個(gè)CP936編碼格式的文本文件中的內(nèi)容全部復(fù)制到另一個(gè)使用UTF-8編碼的文本文件中

def filecopy(srcc,dstt,srccEncoding,dsttEncoding):

with open(srcc,'r',encoding=srccEncoding) as srcfp:

with open(dstt,'w',encoding=dsttEncoding) as dstfp:

dstfp.write(srcfp.read())

filecopy('sample.txt','sample_new.txt','cp936','utf8')

#讀取這兩個(gè)文件

with open('sample.txt') as fp: #默認(rèn)為CP936編碼

print(fp.read())

print()

with open('sample_new.txt',encoding='utf-8') as fp: #如果是其他編碼需要有(encoding = )

print(fp.read())

例:遍歷并輸出文本文件的所有行內(nèi)容

with open('sample.txt') as fp:

for line in fp:

print(line,end='')

案例:

根據(jù)考試成績(jī),統(tǒng)計(jì)學(xué)科等級(jí)水平。 分析:某中學(xué)對(duì)學(xué)生的附加科目進(jìn)行能力測(cè)試,并按以下標(biāo)準(zhǔn)統(tǒng)計(jì)學(xué)科等級(jí)水平。

(1)生物和科學(xué)兩門課都達(dá)到60分,總分達(dá)到180分為及格;

(2)每門課達(dá)到85分,總分達(dá)到260分為優(yōu)秀;

(3)總分不到180分或有任意一門課不到60分,為不及格。

學(xué)生成績(jī)?cè)紨?shù)據(jù)如圖所示。

編程要求:從score.txt文件中讀取學(xué)生成績(jī)數(shù)據(jù),判定等級(jí)并寫入level.txt文件中。

L = list(open('score.txt')) #文件中的每一行都是列表的一個(gè)元素

f = open('level.txt','w') #新建level文件夾寫入

flag = 1

for s in L:

x = s.split()

if flag:

flag = 0

f.write("%s\t%s\t%s\t%s\t是否及格\n" % (x[0], x[1], x[2], x[3]))

continue

for i in range(len(x)): #假如一行有多個(gè)類別就要用for循環(huán)

x[i] = int(x[i])

sum = x[1]+x[2]+x[3]

if x[1]>=85 and x[2]>=85 and x[3]>=85 and sum>=260 :

key = '優(yōu)秀'

elif x[2]>=60 and x[3]>=60 and sum>=180:

key = '及格'

elif x[1]<60 or x[2]<60 or x[3]<60 or sum<180 :

key = '不及格'

f.write('%d\t%d\t%d\t%d\t%s\n'%(x[0],x[1],x[2],x[3],key))

f.close()

f = open('level.txt')

print(f.read())

s=open('score.txt')

f=open('level.txt','w')

x = s.readline().split()

f.write()

while True:

x=s.readline().split()

if len(x)==0:

break

for i in range(1,len(x)):

x[i]=int(x[i])

sum=x[1]+x[2]+x[3]

if x[1]>=85 and x[2]>=85 and x[3]>=85 and sum>=260:

key = "優(yōu)秀"

elif x[2]>=60 and x[3]>=60 and sum>=180:

key = "及格"

else:

key = "不及格"

f.write()

s.close()

f.close()

總結(jié)

以上是生活随笔為你收集整理的python文本文档_python 文本文件操作的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。