久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

關(guān)于python中readlines函數(shù)的參數(shù)hint的相關(guān)知識(shí)總結(jié)

瀏覽:68日期:2022-06-15 18:04:02
readlines的幫助信息

>>> fr=open(’readme.txt’)>>> help(fr.readlines)Help on built-in function readlines: readlines(hint=-1, /) method of _io.TextIOWrapper instance Return a list of lines from the stream.hint can be specified to control the number of lines read: no more lines will be read if the total size (in bytes/characters) of all lines so far exceeds hint.Google翻譯

_io.TextIOWrapper 實(shí)例的 readlines(hint=-1, /) 方法 從流中返回行列表。 可以指定 hint 來控制讀取的行數(shù):如果到目前為止所有行的總大?。ㄒ宰止?jié)/字符為單位)超過hint,則不會(huì)讀取更多行。

readme.txt中的內(nèi)容

關(guān)于python中readlines函數(shù)的參數(shù)hint的相關(guān)知識(shí)總結(jié)

>>> f=open(’readme.txt’)>>> f.readlines()[’1n’, ’22n’, ’n’, ’333’]

為了進(jìn)一步搞清楚hint,我寫了一個(gè)函數(shù)來演示

readlines函數(shù)代碼

def readlinesFile(filename,nbyte): ’’’ 探索f.readlines(i)中i的作用,典型的調(diào)用形式: readlinesFile(’readme.txt’,12) ’’’ for i in range(nbyte):f=open(filename)ss=f.readlines(i) if i==0:#如果hint=0,先把每一個(gè)元素輸出 textline=len(ss)#文件的總行數(shù) ntotalbyte=0#文件的總字?jǐn)?shù) nwritebyte=0#已經(jīng)寫了的字節(jié)數(shù) for j in range(textline):#nwritebyte=ntotalbyte#已經(jīng)寫了的字節(jié)數(shù)ntotalbyte=ntotalbyte+len(ss[j])rowbyte=0#已經(jīng)寫了的新行的字節(jié)數(shù),用來記一行已經(jīng)輸出的字節(jié)個(gè)數(shù)while nwritebyte<ntotalbyte:#當(dāng)已寫字節(jié)<總字節(jié)數(shù) print(f’{nwritebyte+1}:’,repr(ss[j][rowbyte])) #repr是為了輸出換行符 nwritebyte=nwritebyte+1 rowbyte=rowbyte+1 print(f’行數(shù)={textline},字?jǐn)?shù)={ntotalbyte}’)print(f’f.readlines{i}={ss}’) f.close()

輸出

>>> readlinesFile(’readme.txt’,12)1: ’1’2: ’n’3: ’2’4: ’2’5: ’n’6: ’n’7: ’3’8: ’3’9: ’3’行數(shù)=4,字?jǐn)?shù)=9f.readlines0=[’1n’, ’22n’, ’n’, ’333’]f.readlines1=[’1n’]f.readlines2=[’1n’, ’22n’]f.readlines3=[’1n’, ’22n’]f.readlines4=[’1n’, ’22n’]f.readlines5=[’1n’, ’22n’, ’n’]f.readlines6=[’1n’, ’22n’, ’n’, ’333’]f.readlines7=[’1n’, ’22n’, ’n’, ’333’]f.readlines8=[’1n’, ’22n’, ’n’, ’333’]f.readlines9=[’1n’, ’22n’, ’n’, ’333’]f.readlines10=[’1n’, ’22n’, ’n’, ’333’]f.readlines11=[’1n’, ’22n’, ’n’, ’333’]

總結(jié):

1.hint 是要輸出顯示的字節(jié)數(shù)

2.hint 默認(rèn)等于-1,就是以列表的形式讀出所有內(nèi)容

3.hint = 0時(shí),效果等同于-1

4.hint 所指的字節(jié)數(shù)正好是換行符的話,則實(shí)際輸出是 hint+1

更花哨的readlinesFile

def readlinesFile(filename,nbyte): ’’’ 探索f.readlines(i)中i是指什么,典型的調(diào)用形式: readlinesFile(’readme.txt’,12) ’’’ specialByte=[]#存儲(chǔ)特殊的字節(jié)數(shù)用 for i in range(nbyte):with open(filename) as f:#使用with語句就可以不使用f.close()了 ss=f.readlines(i) if(i==0):#如果hint=0,先把每一個(gè)元素輸出print(ss)textline=len(ss)#文件的總行數(shù)ntotalbyte=0#文件的總字?jǐn)?shù)nwritebyte=0#已經(jīng)寫了的字節(jié)數(shù)for j in range(textline): #nwritebyte=ntotalbyte#已經(jīng)寫了的字節(jié)數(shù) ntotalbyte=ntotalbyte+len(ss[j]) rowbyte=0#已經(jīng)寫了的新行的字節(jié)數(shù),用來記一行已經(jīng)輸出的字節(jié)個(gè)數(shù) while nwritebyte<ntotalbyte:#當(dāng)已寫字節(jié)<總字節(jié)數(shù)if(nwritebyte is ntotalbyte-1): specialByte.append(nwritebyte) print(f’033[0;31;47m{nwritebyte+1:2d}:’,repr(ss[j][rowbyte]),’033[0m’)#033[0m是字體和背景顏色設(shè)置,注意可能需要其他庫(kù)的支持else: print(f’{nwritebyte+1:2d}:’,repr(ss[j][rowbyte])) nwritebyte=nwritebyte+1 rowbyte=rowbyte+1print(f’033[0;31;40m行數(shù)={textline:2d},字?jǐn)?shù)={ntotalbyte:2d}033[0m’) if i in specialByte:print(f’033[0;31;47mf.readlines{i:<2d}={ss}033[0m’) #<是左對(duì)齊 else:print(f’f.readlines{i:<2d}={ss}’) #<是左對(duì)齊

效果

關(guān)于python中readlines函數(shù)的參數(shù)hint的相關(guān)知識(shí)總結(jié)

參考文章:https://www.jb51.net/article/206578.htm

到此這篇關(guān)于關(guān)于python中readlines函數(shù)的參數(shù)hint的相關(guān)知識(shí)總結(jié)的文章就介紹到這了,更多相關(guān)python readlines函數(shù)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 安化县| 尚义县| 巴青县| 福贡县| 萝北县| 宣城市| 舒兰市| 和林格尔县| 琼海市| 陆河县| 望城县| 青田县| 虹口区| 呼和浩特市| 黄石市| 建湖县| 琼结县| 大足县| 潜山县| 两当县| 赣榆县| 天镇县| 铜梁县| 江安县| 通榆县| 航空| 白水县| 宜城市| 成武县| 南阳市| 日照市| 枞阳县| 丹东市| 阜新市| 横山县| 宣威市| 凤翔县| 布拖县| 年辖:市辖区| 衡阳县| 无锡市|