def dayUp(df):
dayup=1.0
for i in range(365):
if i %7in[6,0]:
dayup*=(1-0.01)
else:
dayup*=(1+df)
return dayup
dayfactor=0.01
while(dayUp(dayfactor<37.78)):
dayfactor+=0.001
print("每天努力的参数是:{:.3f".format(dayfactor))
字符串类型及其操作
字符串类型的表示
单引号,双引号,三引号
input(),print()
'\'
\a
蜂鸣,响铃
\b
回退,向后退一格
\f
换页
\n
换行
\r
回车
\t
水平制表
\v
垂直制表
\0
NULL
基本字符串操作符
+
连接两个字符串
*
复制n次
x in s
判断x是不是s的子串
str[i]
索引
str[n:m]
内置的字符串处理函数
len(x)
str(x)
字符串形式
chr(x)
返回Unicode编码x对应的单字符
ord(x)
返回单字符表示的Unicode编码
hex(x)
十六进制
oct(x)
八进制
内置的字符串处理方法(str.省略)
lower()
小写
upper()
大写
islower()
判断是否是小写
isprintable()
判断是不是可打印
isnumeric()
判断是不是数字
isspace()
判断是不是都是空格
endswith(suffix[,start[,end]])
判断是不是以suffix结尾
startswith(prefix[,start[,end]])
判断是不是以prefix开始
split(sep=None,maxsplit=-1)
分割 默认分隔符为空格
count(sub[,start[,end]])
计算sub子串出现次数
repleace(old,new[,count]
old替换为new,前count次old被替换
center(width[,fillchar])
居中并填充
strip([chars])
去掉chars中的字符
zfill(width)
不足width长度在左侧填充0
format()
见下
join(iterable)
返回新字符串,由interable变量的每个元素组成,元素用str分隔
字符串类型的格式化
format()的基本使用
槽({})
默认参数从0开始,依次调用format()后返回一个新的字符串
format()的格式控制
<填充>
默认空格
<对齐>
<左对齐 >右对齐 ^居中对齐
<宽度>
<,>
数字的千分位分隔符
<.精度>
浮点数小数部分的精度或字符串的最大输出长度
<类型>
实例:文本进度条
带刷新的文本进度条
import time
scale=50
print("执行开始".center(scale//2,'-'))
t=time.clock()
for i in range(scale+1):
a='*'*i
b='.'*(scale-i)
c=(i/scale)*100
t-=time.clock()
print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,-t),\
end='')
time.sleep(0.05)
print("\n"+"执行结束".center(scale//2,'-'))