當涉及到 Python 文件處理時, 我們通常會涉及到文件的讀取和寫入, 以及文件的操作和處理。
文件讀取
Python語言內置了用于操作文件的標準庫IO,我們可以通過open()方法讀取一個文件。其中, open() 方法提供了許多可選參數,例如文件打開模式、文件編碼等信息。這里是一個典型的例子:
withopen('file.txt','r')asfile:
data=file.read()
print(data)
在這個例子中,我們打開了一個 file.txt 文件,用 “r” 模式讀取文件,并將結果存儲到變量 data 中。 然后我們輸出 data 變量的內容。當我們在 with 塊中使用 open() 方法時,使用完畢后,open() 方法會自動關閉文件。
文件寫入
我們也可以使用 Python 內置的 open() 方法寫入文件,以類似于這樣的方式存儲數據:
withopen('file.txt','w')asfile:
file.write('Hello,World!')
文件操作
在處理文件時,通常需要對已打開的文件執行一些操作。下面列舉了一些常用的操作:
文件重命名
使用 os 模塊的rename()方法可以重命名文件。
importos os.rename('old_name.txt','new_name.txt')
文件刪除
使用 os 模塊的remove()方法可以刪除文件。
importos
os.remove('file.txt')
文件判斷
使用 os 模塊的方法可以判斷文件是否存在、是否為目錄等。
importos
ifos.path.exists('file.txt'):
print('Fileexists!')
ifos.path.isdir('dir'):
print('Itisadirectory.')
文件列表
使用 os 模塊的listdir()方法可以獲得文件夾中的所有文件和目錄列表。
importos
files=os.listdir('.')
forfileinfiles:
print(file)
數據庫讀寫
我們還可以將數據存儲到數據庫中作數據備份或者實現數據的持久化等, 因為數據庫以表格形式儲存數據, 所以Python程序需使用第三方的Python庫才能讀寫數據庫。
下面是一個使用 sqlite3 第三方庫訪問 SQLite 數據庫的例子:
importsqlite3
defcreate_table():
conn=sqlite3.connect('test.db')
c=conn.cursor()
c.execute('''CREATETABLECOMPANY
(IDINTPRIMARYKEYNOTNULL,
NAMETEXTNOTNULL,
AGEINTNOTNULL,
ADDRESSCHAR(50),
SALARYREAL);''')
conn.commit()
conn.close()
definsert_data():
conn=sqlite3.connect('test.db')
c=conn.cursor()
c.execute("INSERTINTOCOMPANY(ID,NAME,AGE,ADDRESS,SALARY)
VALUES(1,'Paul',32,'California',20000.00)")
c.execute("INSERTINTOCOMPANY(ID,NAME,AGE,ADDRESS,SALARY)
VALUES(2,'Allen',25,'Texas',15000.00)")
conn.commit()
conn.close()
defselect_data():
conn=sqlite3.connect('test.db')
c=conn.cursor()
cursor=c.execute("SELECTid,name,address,salaryfromCOMPANY")
forrowincursor:
print"ID=",row[0]
print"NAME=",row[1]
print"ADDRESS=",row[2]
print"SALARY=",row[3],"
"
conn.close()
create_table()
insert_data()
select_data()
在這個例子中,我們通過 sqlite3 庫打開并創建了一個 SQLite 數據庫文件,并利用 SQL 語句創建了一個名為 “COMPANY” 的table。然后我們向這個 table 中插入了兩條數據,并從表中查詢出所有記錄并輸出。
這只是 Python 文件處理的一個簡單介紹,Python IO 和文件處理操作非常豐富,還有許多其他的操作和方法等待我們探索和使用。建議在實踐中結合實際場景來學習,以更好地理解和掌握相關知識。
審核編輯:劉清
-
SQlite
+關注
關注
0文章
81瀏覽量
16732 -
python
+關注
關注
57文章
4876瀏覽量
90025
原文標題:網絡工程師學Python-25-文件處理
文章出處:【微信號:網絡技術干貨圈,微信公眾號:網絡技術干貨圈】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
網絡工程師學Python-文件處理
評論