一、「天天向上」
使用format函式時,對應的裡面的引數可以控制字串的形式:
1、填充:在{}裡面使用=、*之類的可以用來對空格進行填充;
2、對齊:使用(右對齊)、^(居中);
3、設定寬度:直接用整數可以設定寬度,如20,即字串寬度20;
4、千位分隔符(財務資料讀取):用『,』即可;
5、設定精度:『.』加數字可以設計精度;
6、設定資料型別:如0x、0b等設定進製、e設定小數的科學計數法、f設定為浮點數。
什麼是天天向上:就是常說的每天進步1%,一年累計可以進步多少?加入工作日努力,週末休息(休息時退步1%),那麼工作日要多努力才可以追上了?還有常說的三天打魚、兩天曬網又需要是什麼樣的情況?
這個直接寫第二種情況的:
def up(df):
dayup = 1
for i in range(365):
if i % 7 in [6, 0]: #餘數為6和0表示為週六和週末
dayup *= (1 - 0.01)
else:
dayup *= (1 + df)
return dayup
dayfactor = 0.01
while up(dayfactor) < 37.78: #37.78是表示每天努力進步0.01,一年可以進步多少的數
dayfactor += 0.001
print('工作日的努力引數是:'.format(dayfactor))
運算的結果
可以看出,如果每週休息兩天那麼工作日就要加倍努力了。
那如果三天打魚、兩天曬網呢?
……
for i in range(365):
if i % 5 in [4, 0]: #餘數為4和0表示為五天中休息兩天
dayup *= (1 - 0.01)
……
那麼就需要努力更多了。
二、文字進度條
這裡面還是time模組的應用,我覺得我比較難以記住的還是時間的格式化:
%y:年份
%m:表示月份
%b:月份的名稱
%b:月份名稱的縮寫
%d:日期
%a:星期
%a:星期的縮寫
%h:小時(24小時制)
%h:小時(12小時制)
%p:上下午
%m:分鐘
%s:秒
time模組裡面常用的還有個計時的函式:perf_counter(),成對存在,記錄兩個之間的時間,常常可以用作看乙個程式執行了多久。
文字進度條,就是常用的可以看到隨著時間的移動,進度條往前走:
import time
scale = 50
print("執行開始".center(scale//2, '-'))
start = time.perf_counter()
for i in range(scale+1):
a = '*' * i
b = '-' * (scale-i)
c = (i/scale)*100
dur = time.perf_counter() - start
print("\r%[{}->{}]s".format(c, a, b, dur), end = '')
time.sleep(0.01)
print("\n"+"執行結束".center(scale//2, '-'))
例項3 天天向上的力量
問題1 1 的力量 問題描述 一年365天,每天進步1 累計進步多少呢?一年365天,每天進步1 累計退步多少呢?思路分析 每天進步1 可以設計冪級數1.001365,或者直接呼叫pow 1.001,365 每天退步1 可以設計冪級數0.999365,或者直接呼叫pow 0.999,365 dayd...
5 3 天天向上
數碼管 光照度 溫濕度 感測器測試 網口 uart測試 步進電機 強上拉電阻 stc晶元手冊 include include int josephu int n,int m josephunode int josephu int n,int m tail index i tail next head...
017 示例3 天天向上的力量
目錄二 天天向上的力量 第一問 三 天天向上的力量 第二問 四 天天向上的力量 第三問 五 天天向上的力量 第四問 六 天天向上的力量 舉一反三 十天快速入門 python完整教程目錄 基本問題 持續的價值 1.01 0.99 1.01 0.99 daydayupq1.py dayup pow 1....