1、特殊的格式化控制字符
换行
2、内置的字符串处理函数
3、编码
每个字符在计算机里表示的数字称为编码,字符串以编码序列的形式储存在计算机中
目前计算机常用的为ASCII编码,该编码用0-127表示常见字符和特殊值
凯撒密码采用了替代方法对信息中的每个英文字符循环替换为字母表序列中该字符后第三个字符。如A换成D,Z换成C。为其做一个自动化转化的程序。
plaincode = input("请输入明文:") for p in plaincode: if ord("a") <= ord(p) <= ord("z"): print(chr(ord("a")+(ord(p)-ord("a")+3)%26),end='') else: print(p,end='')
4、内置的字符串处理方法
返回str的副本,所有old替换成new
str.strip(A)
左侧右侧去掉A5、字符串格式化
字符串.format()
print("{}的成绩很好,在期末考试中考了{}分,{}班同学应该向他学习。".format("小明","100","五")) #小明的成绩很好,在期末考试中考了100分,五班同学应该向他学习。
完整的format格式:
:<填充><对齐><宽度><,><精度><类型>
6、文本进度条
import time scale = 10 print("------执行开始------") for i in range(scale+1): a,b = '**' * i, '..' * (scale -i) c = (i/scale)*100 print("%{:3.0f}[{}->{}".format(c,a,b)) time.sleep(0.1) print("-----执行结束-----") """ ------执行开始------ % 0[->.................... % 10[**->.................. % 20[****->................ % 30[******->.............. % 40[********->............ % 50[**********->.......... % 60[************->........ % 70[**************->...... % 80[****************->.... % 90[******************->.. %100[********************-> -----执行结束----- """
7、单行动态刷新
将每一次进度输出都固定在同一行并不断地用新生成的字符串覆盖之前的输出,形成进度条不断刷新的动态效果
import time for i in range(101): print("r{:2}%".format(i),end="") time.sleep(0.05)
输出没有单行刷新的可能原因:
IDLE本身屏蔽了单行刷新的功能,可以去控制台执行,或者在其他第三方集成中实现,如pycharm
8、带刷新的文本进度条
import time scale = 50 print("执行开始".center(scale//2,'-')) t = time.perf_counter() for i in range(scale +1): a = '*' *i b = '.' *(scale-i) c = (i-scale)*100 t -= time.perf_counter() print("r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,-t),end='') time.sleep(0.05) print("n"+"执行结束".center(scale//2,'-'))
python在3.8版本中已不再支持time.clock()方法,因此使用了time.perf_counter()代替
9、程序的基本结构
程序有3种结构:顺序结构、分支结构和循环结构,,这些结构都只有1个入口和1个出口
分支结构:单分支、二分支
循环结构:条件循环、遍历循环
10、程序的描述方式
1)自然语言描述:使用人类语言直接描述
2)流程图:直观清晰,但是比较繁琐
3)伪代码:不拘泥于集体编程语言和语法但是保持基本的逻辑框架
11、if语句
if 条件:
语句
if语句的执行与否依赖于条件判断
12、关系 *** 作符
13、二分支结构:if-else语句
if 条件:
语句1
else:
语句2
14、多分支结构:if-elif-else语句
if 条件1:
语句1
elif 条件2:
语句2
....
else:
语句N
height,weight = eval(input("请输入身高(米)和体重(公斤):")) bmi = weight / pow(height,2) print("BMI数值为:{:.2f}".format(bmi)) who,dom = "","" if bmi < 18.5: who = "偏瘦" elif bmi < 25: who = "正常" elif bmi < 30: who = "偏胖" else: who = "肥胖" if bmi < 18.5: dom = "偏瘦" elif bmi < 24: dom = "正常" elif bmi <28: dom = "偏胖" else: dom = "肥胖" print("BMI指标为:国际’{0},国内{1}".format(who,dom))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)