'''請儲存本地txt檔案格式,可自行更換檔案路徑,操作檔案4. 有乙份長長的購物清單,格式如下;
--------------------
**** 180.90 88折
**** 10.25 65折
**** 56.14 9折
**** 104.65 9折
…**** 289.69 8折
以下是讓人頭疼的購物單,為了保護隱私,物品名稱被隱藏了。
假設只允許用現金購買,那麼應最少準備多少張100元的鈔票(5200)
'''import re
fpath = "c:/users/lenovo/desktop/購物清單.txt"
with open(fpath,'r',encoding='utf-8') as f:
countprice=0
for contents in f:
#將* 折全部替換為空
pricelines = re.sub("[*折]","",contents)
#將半價替換為5,相當於5折 方便統一計算
pricelines = pricelines.replace("半價","5")
#刪除前後空格
pricelines = pricelines.strip()
#按中部空格分隔,返回list
pricelines = pricelines.split()
if pricelines:
#根據題意,我們知道,後面是為打折數目
#8折 處理掉折 就只有8這個字元
#所以此時是乙個位數len之後 為1
#根據條件判斷除以100 還是除以10
#然後就出來了當前物品的打折之後的**
if len(pricelines[1]) == 1:
countprice+=float(pricelines[1])*float(pricelines[0])/10
else:
countprice+=float(pricelines[1])*float(pricelines[0])/100
#列印一共需要多少錢
print("一共需要元".format(countprice))
temp = int(countprice)%100
#不能整除的話,需要在原來的基礎上加一張100元
#例如5363肯定需要54張才夠呀
if temp != 0 :
print("一共需要{}張100元".format(int(countprice//100) +1))
else:
print("一共需要{}張100元".format(int(countprice//100)) )
**** 180.90 88折
**** 10.25 65折
**** 56.14 9折
**** 104.65 9折
**** 100.30 88折
**** 297.15 半價
**** 26.75 65折
**** 130.62 半價
**** 240.28 58折
**** 270.62 8折
**** 115.87 88折
**** 247.34 95折
**** 73.21 9折
**** 101.00 半價
**** 79.54 半價
**** 278.44 7折
**** 199.26 半價
**** 12.97 9折
**** 166.30 78折
**** 125.50 58折
**** 84.98 9折
**** 113.35 68折
**** 166.57 半價
**** 42.56 9折
**** 81.90 95折
**** 131.78 8折
**** 255.89 78折
**** 109.17 9折
**** 146.69 68折
**** 139.33 65折
**** 141.16 78折
**** 154.74 8折
**** 59.42 8折
**** 85.44 68折
**** 293.70 88折
**** 261.79 65折
**** 11.30 88折
**** 268.27 58折
**** 128.29 88折
**** 251.03 8折
**** 208.39 75折
**** 128.88 75折
**** 62.06 9折
**** 225.87 75折
**** 12.89 75折
**** 34.28 75折
**** 62.16 58折
**** 129.12 半價
**** 218.37 半價
**** 289.69 8折
原始碼位址
python文字處理
基本的文字操作 在python中,可以用下列方式表現乙個文字字串 this is a literal string out 1 this is a literal string this is a literal string out 2 this is a literal string 使用3引用...
python 文字處理
我們談到 文字處理 時,我們通常是指處理的內容。python 將文字檔案的內容讀入可以操作的字串變數非常容易。檔案物件提供了三個 讀 方法 read readline 和 readlines 每種方法可以接受乙個變數以限制每次讀取的資料量,但它們通常不使用變數。read 每次讀取整個檔案,它通常用於...
python文字處理
日常操作中,少不了文字處理,如程式輸入資料準備,python憑藉其簡潔優雅的語法,在文字處理上比c 等編譯型語言開發效率高出一大截。檔案操作示例 輸入檔案 f open r d python27 pro 123.bak 輸出檔案 fw open r d python27 pro 123e.bak w...