檔案的小知識點

2021-10-01 19:09:06 字數 1680 閱讀 6057

import traceback

import os

os.path.splitext(file_name)[0]獲取檔案的字首

os.path.splitext(file_name)[1]獲取檔案的字尾

注意:如果檔案編碼是"utf-8",需要使用notepad++去掉檔案的bom頭

r模式:開啟檔案只用於讀。檔案的指標將會放在檔案的開頭。前提條件是檔案必須存在,如果不存在,會報錯。

r+模式:開啟檔案用於讀寫。檔案的指標將會放在檔案的開頭(寫的時候會覆蓋寫)。前提條件是檔案必須存在,如果不存在,會報錯。

with open("e:\\python_question\\other\\1.txt","w") as fp:

fp.write("abc")

with open("e:\\python_question\\other\\1.txt","r") as fp:

print(fp.read())      #執行結果:abc

with open("e:\\python_question\\other\\1.txt","r+") as fp:

fp.write("yy")  

with open("e:\\python_question\\other\\1.txt","r") as fp:

print(fp.read())      #執行結果:yyc

從上面的例子可以看出剛開始檔案的內容是"abc",當再次寫入內容"yy"之後,再次進行讀檔案內容時,顯示的是"yyc",也就       是"yy"會把"ab"的內容覆蓋

w模式:開啟檔案只用於寫(清空所有的內容再進行寫)。如果該檔案已存在將其覆蓋;如果該檔案不存在,建立新檔案。

w+模式:開啟檔案用於讀寫(清空所有的內容再進行讀寫)。如果該檔案已存在將其覆蓋;如果該檔案不存在,建立新檔案。

a模式:開啟檔案只用於追加寫(需要手動加\n進行換行)。如果該檔案已存在,新的內容將會被寫到已有內容之後;如果該檔案不存在,建立新檔案進行寫入。

a+模式:開啟檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾,檔案開啟時會是追加模式;如果該檔案不存在,建立新檔案進行讀寫。

fp=open("e:\\test\\test.txt")

fp.read():讀取所有的內容

fp.readline().strip():讀取一行,不會讀取回車

fp.readlines():遍歷所有行的內容到乙個列表裡面

舉例讀檔案的內容:下面(1)和(2)讀小資料,用任何乙個都可以,讀大資料必須使用(2),讀完一行再讀另外一行

(1)遍歷所有行到乙個列表裡面

with open("e:\\python_question\\other\\1.txt") as fp:

content=fp.readlines()

print("content=%s" %content)

"""執行結果:

content=['第一行的內容111,111後面顯示的內容\n', '第二行的內容222'] """

(2)直接遍歷fp

with open("e:\\python_question\\other\\1.txt") as fp:

for i in fp:

print(i.strip())

"""執行結果:

第一行的內容111,111後面顯示的內容

第二行的內容222"""

Hibernate 小知識點

今天比較忙沒怎麼寫 知識一些曉得知識或是經驗吧!1.lazy延遲載入 也可以說是需要的時候再區載入 場景 乙個類如person和address,person可以通過getaddress 來得到address的set集合.有乙個dao控制類operation.方法public person query...

dom 小知識點

1 classname屬性可設定或返回元素的 class 屬性。function getclass document.getelementbyid d1 classname bbb alert document.getelementbyid d1 classname 2 removechild 刪除...

小知識點 備查

1,kermit c 安裝 sudo apt get install ckermit 開啟串列埠 在終端裡執行 sudo kermit c 命令 關閉串列埠 先同時按住 ctrl 和 鍵,然後鬆開再按 c 鍵,最後輸入 exit 或者q鍵 並回車 2,g sensor android加速度感測器型別...