python基礎學習9 檔案與異常

2021-10-07 03:20:28 字數 2882 閱讀 2589

訪問檔案,以及對檔案進行操作; 以及異常的丟擲及處理

檔案

#讀取檔案

filepath=

'd:\desktop\pi_value.txt'

#windows下是反斜槓\, linux是斜槓/

with

open

(filepath)

as file_object:

#開啟檔案,得到乙個檔案類file_object,使用with的結構是方便在這個作用域結束後自動關閉檔案,不用再人工呼叫close函式

contents=file_object.read(

)print

(contents.rstrip())

#rstrip()方法是減少乙個多餘的換行,可以不使用

#result: 3.1415926535

# 8979323846

# 2643383279

#按行讀取

with

open

(filepath)

as file_object:

for line in file_object:

print

(line.rstrip())

#同樣也是去除多餘的

#對資料進行處理

with

open

(filepath)

as file_object:

lines=file_object.readlines(

)#lines是乙個列表,每個元素就是檔案的一行

pi_string=

''for line in lines:

pi_string+=line.strip(

)print

(pi_string)

#result: 3.141592653589793238462643383279

# string.replace(a,b) #用b取代string中的a

#寫入檔案

filename=

'd:\\desktop\\null.txt'

#此處單反斜槓不行,改為雙方斜線 原因暫不清楚

with

open

(filename,

'w')

as file_object:

#open()函式第二個引數是開啟方式,'w'表示寫,'a'是附加方式,'r+'是讀取和寫入,如果不寫第二個引數,則預設是唯讀的'r'

#此外'w'方式開啟時,若是已存在檔案,怎會清空原檔案內容

file_object.write(

"miss me? miss me? miss me?"

)#寫內容進檔案 只能寫字串進入檔案

#result: 檔案d:\desktop\null.txt被建立並被寫入內容"miss me? miss me? miss me?"

#附加方式 即在原檔案尾新增,不清空原檔案內容

with

open

(filename,

'a')

as file_object:

file_object.write(

)# d:\\desktop\\null.txt :

# miss me? miss me? miss me?

異常

# try-except語句   除零錯誤

num=

input

("give me a number to divide:"

)num=

int(num)

try:

answer=

100/num

except zerodivisionerror:

print

("you can't divide by zero !"

)else

:print

(answer)

# 結果是輸出提示資訊,而不是異常退出程式

#如果不使用try except語句丟擲並異常,那麼就會程式直接中斷退出

# 檔案錯誤

filename=

'this_file_not_exist.txt'

try:

with

open

(filename)

as fileobj:

contents=fileobj.read(

)except filenotfounderror:

print

("file not found!"

)#當然也可以不處理 僅僅在except後使用pass語句就可以(類似於微控制器的_nop_())

使用json訪問資料

#json.dump用於寫入json檔案內容,json.load用於載入讀出json檔案內容

import json

number=[1

,3,5

,7,9

,12]with

open

('listofmine.json'

,'w'

)as f_obj:

json.dump(number,f_obj)

#將number列表儲存進listofmine.json檔案中

with

open

('listofmine.json'

)as f_obj:

jsonnumber=json.load(f_obj)

#從listofmine.json檔案中讀取資料

print

(jsonnumber)

重構: 將**劃分為一系列完成具體工作的函式

python基礎 9 檔案操作

開啟檔案 獲取檔案物件 關閉檔案 1 格式 f open 路徑 檔名 模式 預設為r模式唯讀 read first line f.read line 讀取第一行 print first line f.close 關閉檔案 開啟檔案的模式有 r 唯讀模式 預設模式,檔案必須存在,不存在則丟擲異常 w,...

Python學習筆記9 檔案

在python中,要對乙個檔案進行操作,只需用內建的open函式開啟檔案即可。signature open file,mode r buffering 1,encoding none,errors none,newline none,closefd true,opener none docstrin...

Python 9 檔案與檔案系統

檔案與檔案系統 開啟檔案 open file,mode r buffering none,encoding none,errors none,newline none,closefd true 開啟模式 執行操作 r 以唯讀方式開啟檔案,檔案的指標將會放在檔案的開頭 w 開啟乙個檔案只用於寫入。如果...