檔案操作的流程
序號用途
方法功能
1開啟/關閉
f=open(file)
開啟檔案
2close()
關閉檔案
3讀寫檔案內容
f.read([size])
從檔案中讀取指定的位元組數:若未指定,讀取所有
4f.readline([size])
讀取整行,包括"\n"
5f.readlines([size])
讀取所有行,並返回列表
6f.write(str)
將字串寫入檔案,並返回字串長度
7f.writelines(str)
向檔案中寫入乙個序列字串列表。如果需要換行,需要自己加入換行符
8f.flush()
重新整理檔案緩衝,直接把內部緩衝的資料寫入檔案
9檔案定位
f.seek(offset)
設定檔案的當前位置,即指標位置
10f.tell()
返回檔案的當前位置,即指標位置
格式:
file_object=
open
(file,[
,mode],[
,encoding=
"utf-8"],
[,buffering]
)
解釋
#與py檔案在同一目錄
f=open
('./date/greenflowerporcelain.txt'
,'r'
)f.read(
)print
(f.name)
print
(f.mode)
print
(f.closed)
f.close(
)print
(f.closed)
檔案物件的屬性屬性
描述f.name
返回檔案的名稱
f.mode
返回檔案的訪問模式
f.closed
如果檔案已經關閉,返回true;否則false
mode表模式
描述r以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。`
rb以二進位制格式開啟乙個檔案用於唯讀。檔案指標將會放在檔案的開頭。這是預設模式。
r+開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。
rb+以二進位制格式開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。
w開啟乙個檔案只用於寫入。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。`
wb以二進位制格式開啟乙個檔案只用於寫入。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。
w+開啟乙個檔案用於讀寫。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。
wb+以二進位制格式開啟乙個檔案用於讀寫。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。
a開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。`
ab以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
a+開啟乙個檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾。檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。
ab+以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。如果該檔案不存在,建立新檔案用於讀寫。
關閉
f.close()
可以節約記憶體資源
readline()
readlines()
f.tell()
f.seek()
開發過程中,程式**會越來越多,如果直接放在乙個檔案裡,**會越來越長。–>**不易維護
為了編寫方便維護的**,可以吧不同功能的**分組,儲存在不同的檔案裡。這樣每個檔案包含的**量就會比較少,方便維護
在python中,乙個.py檔案就可以稱為乙個模組即:
使用的模組的優點:
避免變數名重複
python中匯入模組的常用方式:
import 模組名稱
import 模組名稱 as 新名稱
from 模組名稱 import 函式名
區別:
from 模組名稱 import 函式名
import random
random.random(
)from random import
*random(
)
注意
import語句的對應模組順序(pep) 程式最上方
operator system
os模組是python標準庫中用於訪問作業系統功能的模組。
使用os模組提供的介面,能實現跨平台訪問。
最常見的操作
os.name:先視我們正在使用的平台
os.getenv()–>讀取環境變數
os.getcwd()–>獲取當前路徑
os.mkdir(
'a')
os.makedirs(
'd:\python\程式/a1'
)
os.rmdir(
'date'
)os.removedirs(
'd:\python\程式\date'
)#[winerror 145] 目錄不是空的。
import os
print
(os.getcwd())
os.chdir(
'..'
)print
(os.getcwd())
#f:\python\程式
#f:\python
#..表示上一級
print
(os.path.exists(
'date'))
#true
print
(os.path.getsize(
'test.txt'))
#64print
(os.path.dirname(
'd:\python\程式\date\test.txt'))
#d:\python\程式\date
print
(os.path.basename(
'd:\python\程式\date\test.txt'))
#test.txt
print
(os.path.abspath(
'test.txt'))
#d:\python\程式\test.txt
print
(os.path.join(
'd:\python\程式\date'
,'test.txt'))
#d:\python\程式\date\test.txt
print
(os.path.split(
'd:\python\程式\date\test.txt'))
#('d:\\python\\程式\\date', 'test.txt')
import time
a=os.path.getmtime(
'one.txt'
)print
(time.strftime(
'%y-%m-%d-%x'
,time.localtime(a)))
print
(time.strftime(
'%y-%m-%d-%x'
,time.localtime(os.path.getatime(
'test.txt'))
))print
(time.strftime(
'%y-%m-%d-%x'
,time.localtime(os.path.getctime(
'test.txt'))
))'''2019-07-22-11:02:58
2019-07-22-17:08:58
2019-07-22-17:08:17
'''
import os
#.代表從當前資料夾開始 ..帶表從上級資料夾開始
path=os.walk(
'..'
)for i in path:
print
(i)
Python 檔案與檔案操作
2.檔案的開啟和關閉 3.檔案的關閉 4.檔案內容讀取的常用方法 5.遍歷文字的常用方法 6.資料檔案的寫入 二.資料的格式化與處理 擴充套件 三.例項 1.檔案的型別 檔案是資料的抽象與集合。二進位制檔案 直接由位元0和1組成,沒有統一編碼,存在二進位制0和1的組織式結構 2.檔案的開啟和關閉 開...
日誌檔案操作
要求 頁面能實時顯示日誌檔案中的內容 自動更新 讀取一次後記下當前讀取的位置,作為下一次讀取的起始點,使用randomaccessfile來實現斷點讀取 1 public resultobject runlog string id,string pos 26randomfile.seek long....
python日誌操作
最寫成為為類的格式 乙個簡單的log日誌生成 import logging import datetime import os os.path.join 連線兩個或更多的路徑名元件 會自動新增 os.getcwd 獲取當前路徑的絕對路徑 file dir os.path.join os.getcwd...