讀取整個日誌檔案:
#讀取整個日誌檔案
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 從隊頭刪除元...
用棧實現佇列,用佇列實現棧。好玩!!!
因為在資料結構中,棧和佇列長得實在是太像了,將他們拿來比較是不可避免的,棧 後進先出,而佇列 先進先出。同樣是只能在一端進行操作,那麼問題來了,能相互實現?能不能得好好分析一下嘛,如果是用兩個棧來實現佇列,好像這操作可以哦。一下,你就明白!顯然用兩個棧可以實現佇列的功能,就是借助另乙個棧來中轉一下,...