with open() as 檔案物件:
檔案上下文(可以操作檔案的位置)
with open(』./合同』, encoding=『utf-8』) as f:
f.read()
f.read()
資料持久化需要做到以下3點:
1)建立檔案儲存需要持久資料
2)在程式中每次需要這個資料,不直接賦值而是從檔案中去讀取它的值
3)在程式如果修改了這個資料的值,需要將這個最新的值更新到檔案中
# 練習1:在程式中用乙個資料來儲存當前程式啟動的次數,並且列印次數
# 1 - 獲取上一次執行時對應的次數
with
open
('files/count.txt'
, encoding=
'utf-8'
)as f:
num =
int(f.read())
num +=
1print
(num)
with
open
('files/count.txt'
,'w'
, encoding=
'utf-8'
)as f:
f.write(
str(num)
)
# 練習2:寫程式錄入學生的成績,每次錄入成績的時候以'q'結束
"""請輸入學生的成績(q退出): 90
請輸入學生的成績(q退出): 23
請輸入學生的成績(q退出): 78
請輸入學生的成績(q退出): q
[90, 23, 78]
程式結束
請輸入學生的成績(q退出):89
請輸入學生的成績(q退出):100
請輸入學生的成績(q退出): q
[90, 23, 78, 89, 100]
"""scores =
with
open
('files/score.txt'
, encoding=
'utf-8'
)as f:
content = f.read(
)# '', '[45, 67, 98]'
scores =
eval
(content)
# , [45, 67, 98]
while
true
: score =
input
('請輸入學生的成績(q退出):'
)if score ==
'q':
break
float
(score)
)# [45, 67, 98]
# [45, 67, 98, 100]
print
(scores)
with
open
('files/score.txt'
,'w'
, encoding=
'utf-8'
)as f:
f.write(
str(scores)
)# '[45, 67, 98]', '[45, 67, 98, 100]'
#[1, 2] -> '[1, 2]'
# 練習3:寫程式錄入學生資訊,錄入內容:姓名和**。要求每次在錄入的時候保留上次錄入的結果
"""姓名:
繼續or退出(y/n:)y
姓名:繼續or退出(y/n:)y
姓名:繼續or退出(y/n:)n
程式結束!
姓名:繼續or退出(y/n:)y
姓名:繼續or退出(y/n:)n
程式結束!
"""with
open
('files/students'
, encoding=
'utf-8'
)as f:
content = f.read(
) students =
eval
(content)
while
true
: name =
input
('姓名:'
) tel =
input()
students[name]
= tel
value =
input
('繼續or退出(y/n):'
)if value ==
'n':
break
print
(students)
with
open
('files/students'
,'w'
, encoding=
'utf-8'
)as f:
f.write(
str(students)
)
產品助理day14
一 今日工作 1 補昨天的坑 去掉多餘的字段,新增乙個代表狀態的字段!從而根據狀態明確知道什麼時候是成交的金額,在此之前的都是預估金額 二 今日收穫 1 最近的心病,對應用了解的廣度不夠 2 下手之前先想好,就像寫作文打草稿一樣,另外,要多分析競品 三 今日產品學習 收穫 先來個段子吧 正文 1 產...
每日演算法 day 14
那些你早出晚歸付出的刻苦努力,你不想訓練,當你覺的太累了但還是要咬牙堅持的時候,那就是在追逐夢想,不要在意終點有什麼,要享受路途的過程,或許你不能成就夢想,但一定會有更偉大的事情隨之而來。mamba out 2020.2.26 整體思想是 記憶化 dfs 記憶化 將搜尋過程中某一塊的內容直接記錄下來...
day14 內建函式
內建函式就是python執行時就會載入記憶體的函式,py直譯器執行後就可以直接拿來用的函式,常用的內建函式有以下這些,其中enumerate和eval是最常用的 1.bytes print 中文 encode utf8 print bytes 中文 utf8 2.char ord print chr...