import os
import time
import datetime
#檔案操作常用方法如下:
#寫檔案
with open("111.txt", "w") as fp:
fp.write("1111\n")#將字串寫到文件
fp.writelines(["aaa\n","bbb\n"])#將列表寫到文件中
fp.close()
#讀檔案
with open("111.txt", "r+") as fp:
#datas = fp.read() #讀取所有內容,返回字串型別
#dataline = fp.readline() #讀取一行內容,返回str
#datalines = fp.readlines() #讀取所有內容,返回list,每行就是列表中的值
os.getcwd()
fp.close()
print(os.getcwd())
#"r+"中的寫,是在原來的基礎上加資訊,需要檔案存在,不然報錯
#"w+"中的寫,檔案存在直接覆蓋原來的資訊,檔案不存在,則建立檔案
#"a"開啟乙個檔案用於追加,"a+"使用者讀寫,檔案存在,則追加在原內容後面,檔案不存在,則建立檔案
with open("re_test.txt", "a", encoding = "utf-8-sig") as fp:
fp.write("asdf1243\nzxcv6789")
fp.flush() #寫完後需要重新整理,資料才被寫到文字中
fp.seek(0) #0:將游標定位到開始處,1:將游標定位到當前處,2:將游標定位到結尾處
datas = fp.readlines()
print(datas)
os.getcwd() #獲取當前目錄
os.rename("222.txt", "111.txt") #檔案重新命名
os.remove("222.txt") #刪除檔案
os.mkdir("test") #建立資料夾
os.rmdir("test") #刪除資料夾
os.makedirs("aa/bb") #建立aa資料夾及子資料夾bb
os.removedirs("aa/bb") #刪除aa資料夾及子資料夾bb
os.sep #可以取代作業系統特定的路徑分割符,相當於「\」
os.chdir(os.getcwd() + os.sep + "test")#進入路徑
os.listdir(os.getcwd()) #返回目錄下的檔案,返回列表型別
os.path.isfile("111.txt") #判斷當前路徑下"111.txt"是否是檔案
os.path.isdir("test") #判斷當前路徑下"test"是否是資料夾
os.path.exists("test") #判斷當前路徑下是否有「test」資料夾或者檔案
os.path.getsize("111.txt")#獲取檔案大小
os.path.abspath("111.txt")#獲取檔案的絕對路徑
os.path.basename(os.path.abspath("111.txt"))#獲取檔案的檔名,注意引數需要傳入絕對路徑
os.path.dirname(os.path.abspath("111.txt"))#獲取檔案的所在目錄,注意引數需要傳入絕對路徑
2. try_except_else_finally
#python異常處理
''' try:
執行**
except:
異常出現時,執行**部分
else:
沒有異常時,執行**部分
finally:
不管有沒有異常,一定執行
'''with open("111.txt","r") as fp:
try:
fp.write("111\n")
except:
print("有異常")
else:
print("沒有異常,成功")
finally:
print("finally:關閉檔案")
fp.close()
#time相關操作
a = time.time() #返回時間戳
tupletime = time.localtime() #返回時間元組,引數是時間戳,加引數就是返回引數時間戳的時間元組,不加引數返回當前時間戳
time.mktime(tupletime) #返回時間戳,將傳入的時間元組轉成時間戳
#time.strftime(fmt[,tupletime]),傳入引數為時間元組,並返回以可讀字串表示的當地時間,格式由fmt決定
time.strftime("%y-%m-%d-%h-%m-%s", tupletime)
#time.strptime(str,fmt) 傳入引數為時間字串,根據fmt的格式把乙個時間字串解析為時間元組
time.strptime("2020-09-01","%y-%m-%d")
#列印兩個時間之前的日期
def stattime(starttime, endtime):
time_list =
#將時間字串轉成元組
stattime_tup = time.strptime(starttime, "%y-%m-%d")
endtime_tup = time.strptime(endtime, "%y-%m-%d")
#將時間元組轉成時戳
stattime_float = time.mktime(stattime_tup)
endtime_float = time.mktime(endtime_tup)
#資料操作
while stattime_float < endtime_float:
#轉成時間元組
time_tup = time.localtime(stattime_float)
#轉成日期格式
temp = time.strftime("%y-%m-%d", time_tup)
stattime_float = stattime_float + 3600*24
return time_list
datas = stattime("2020-01-01","2020-05-01")
for date in datas:
weekdate_tup = datetime.datetime.strptime(date,"%y-%m-%d")
weekdate = weekdate_tup.strftime("%w")#十進位制表示的星期幾(值從0到6,星期天為0
print("%s 星期%s"%(date, int(weekdate)+1))
python檔案操作和異常
python檔案的操作和異常 toc 這兩個月複習考研的同時,在github上斷斷續續的跟著駱先生 jackfrued 在我關注裡有 學習了一段時間的python,由於是自學所以經常會遇到一些容易卡死的問題,這篇文章我就簡單的分享一下在檔案及檔案異常我遇到的問題。函式語法 open file uni...
python 異常與檔案操作
異常就是程式在執行過程中所出現的錯誤,一旦出現異常,將會導致程式立即終止執行。try 必須有 塊except 可以有多個,但是只會執行一次 塊 出錯後才會執行的語句 else 有沒有無所謂 塊 沒有出錯要執行的語句 finally 與except至少有乙個 塊 無論是否出錯,都會執行 deffn p...
golang 的時間格式化操作
time.now format 2006 01 02 15 04 05 你將會獲得如同yyyy mm dd hh mm ss這樣的輸出。在 format.go 的原始碼中我們可以找到一些預定的格式,原始碼摘抄如下 const ansic mon jan 2 15 04 05 2006 unixdat...