用pycham實現 log txt檔案的讀寫

2021-10-24 04:21:03 字數 2808 閱讀 6070

讀取整個日誌檔案:

#讀取整個日誌檔案

with

open

("test.log"

,mode=

"r",encoding=

"utf-8"

)as f:

#用唯讀的方式開啟日誌檔案

f_content=f.read(

)#讀取檔案內容

print

(f"檔案內容:"

)#列印檔案內容

按行讀取日誌檔案(已知行數的檔案):

#按行讀取檔案內容(已知行數的檔案)

with

open

("test.log"

,mode=

"r",encoding=

"utf-8"

)as f:

#用唯讀的方式開啟日誌檔案

line1=f.readline(

)#第一行的內容

line2=f.readline(

)#第二行的內容

print

(f"第一行的內容為:"

)#列印第一行的內容

print

(f"第二行的內容為:"

)#列印第二行的內容

按行讀取檔案(未知行數的檔案):

#按行讀取檔案(未知行數的檔案)

with

open

("test.log"

,mode=

"r",encoding=

"utf-8"

)as f:

#用唯讀的方式開啟日誌檔案

line=f.readline(

)while line:

print

(f"行內容:"

) line=f.readline(

)

按行隨機輸出內容:

#按行隨機輸出內容

import random

with

open

("test.log"

,mode=

"r",encoding=

"utf-8"

)as f:

#用唯讀的方式開啟日誌檔案

lines=f.readlines(

)for i in

range(10

):line=lines[random.randint(0,

len(lines)-1

)]print

(f"隨機行:"

)

把資料(str)寫入檔案中:

#把資料(str)寫入檔案中

with

open

("test.log"

,mode=

"w",encoding=

"utf-8"

)as f:

#用覆蓋的方式開啟日誌檔案

str1 =

"testcase01,pass,\n"

str2 =

"testcase02,pass,\n"

str3 =

"testcase03,pass,\n"

f.write(str1)

f.write(str2)

f.write(str3)

f.flush(

)#重新整理檔案

把資料(list)寫入檔案中:

#把資料(list)寫入檔案中

str1 =

"testcase01,failed,\n"

str2 =

"testcase02,pass,\n"

str3 =

"testcase03,pass,\n"

str4 =

"testcase04,pass,\n"

list1=

[str1,str2]

list2=

[str3,str4]

with

open

("test.log"

,mode=

"w",encoding=

"utf-8"

)as f:

#用覆蓋的方式開啟日誌檔案

f.writelines(list1)

f.flush(

)with

open

("test.log"

,mode=

"a",encoding=

"utf-8"

)as f:

#用追加的方式開啟日誌檔案

f.writelines(list2)

f.flush(

)

獲取指標位置和指標偏移

#獲取當前指標的位置tell()

#從制定位置讀寫 seek(偏移值,參考值)

'''參考值:

0:從檔案開頭開始

1:從當前位置開始

2:從檔案末尾開始

'''with

open

("test.txt"

,"r"

)as f:

f.seek(6,

0)#指標從開頭位置偏移6個字元

print

(f.readline())

#列印這一行偏移後的內容

.log檔案格式

用pycham讀取和寫入csv檔案

讀取csv檔案 讀取csv檔案 import csv with open ceshi.csv mode r encoding utf 8 as f f csv csv.reader f 通過csv類庫讀取原始檔 idx 0for data in f csv 遍歷輸出csv資料內容 if idx 0 ...

用棧實現佇列 用佇列實現棧

棧的特點 filo firstinlastout 僅能從棧頂插入,刪除元素。最基本的介面包括push 從棧頂壓入元素 pop 從棧頂彈出元素 佇列的特點 fifo firstinfirstout 僅能從隊頭刪除元素,從隊尾插入元素。最基本的介面包括enque 從隊尾插入元素 deque 從隊頭刪除元...

用棧實現佇列,用佇列實現棧。好玩!!!

因為在資料結構中,棧和佇列長得實在是太像了,將他們拿來比較是不可避免的,棧 後進先出,而佇列 先進先出。同樣是只能在一端進行操作,那麼問題來了,能相互實現?能不能得好好分析一下嘛,如果是用兩個棧來實現佇列,好像這操作可以哦。一下,你就明白!顯然用兩個棧可以實現佇列的功能,就是借助另乙個棧來中轉一下,...