day2内容总结
day2内容总结
1.while.else
2.格式化输出,占位符
3.运算符
4.编码初识
1.while...else
当程序正常循环结束,则执行else语句,如果程序循环被break中止,则不执行else语句
i = 1 while i <=10: print(i) i+=1 else: print('loop over')
i = 1 while i <=100: if i ==10: break print(i) i+=1 else: print('loop over')
2.格式化输出
用+连接字符串(不能连接字符串和数字)
hero = input('您选择的英雄是?') position = input('您的团队定位是?') word= input('您的台词是?') hero_word = "我是"+ hero + ",位置是" + position + ',我想说'+ word print(hero_word)
占位符+字符串格式化输出
1 game = input("最喜欢的游戏") 2 time = int(input("最早玩的时间")) 3 hero = input("最喜欢的游戏角色") 4 word = input('想对游戏玩家说的一句话') 5 str = ''' 6 ------最喜爱度游戏调查表----- 7 最喜欢的游戏: %s 8 最开始完游戏的时间: %d 9 最喜欢的游戏角色: %s 10 最想对%s玩家说的一句话: %s 11 ----------over--------- 12 '''%(game,time,hero,game,word) 13 print(str)
字典格式化输出
dia = { 'name':'盖伦', "posi":"坦克", "road":"上路" } str = ''' ----%(name)s:定位分析--- 英雄名: %(name)s 定位: %(posi)s 位置: %(road)s -----over----- '''% dia print(str)
百分号与占位符同时出现时,要用两个百分号%%表示百分号
3.运算符
算数运算符
+,-,*,/,//,%,**
赋值运算符
=与算数运算符的结合
逻辑运算符(运算布尔值或数字)
运算布尔值
优先级not>and>or,同级则从左到右运算
运算数字(非0位真,0位假)
x or y,x位真,则输出x,为假则输出y
x and 输出结果与or相反
4.编码初步认识
ascii-->>unicode16位>>升级为32位>>升级为utf-8,utf-16
5.作业
1.判断下列逻辑语句的True,False.
1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
优先级,not>and>or, --True
2)not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
False
2、求出下列逻辑语句的值。
not>and>or
x or y,x为真则 输出x,x为假,输出y
x and y,结果和x or y相反
1),8 or 3 and 4 or 2 and 0 or 9 and 7
8 or 4 or 0 or 7
8
2),0 or 2 and 3 and 4 or 6 and 0 or 3
0 or 4 or 0 or 3
4
3、下列结果是什么?
关系运算符优先级高于逻辑运算符
1)、6 or 2 > 1 --6 or True---6
2)、3 or 2 > 1----3 or True----3
3)、0 or 5 < 4-----0 or False---False
4)、5 < 4 or 3----False or 3----3
5)、2 > 1 or 6-----True or 6----True
6)、3 and 2 > 1----3 and True---True
7)、0 and 3 > 1----0 and True---o
8)、2 > 1 and 3---True and 3---3
9)、3 > 1 and 0----true and 0--- 0
10)、3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2,关系运算符高于逻辑运算符
True and 2 or true and 3 and 4 or True--- --and 高于or
2 or 4 or True---2
4. 简述变量命名规范
1)变量名由数字,字母和下划线组成
2)不能以数字开头
3)不能是pytho关键字
4)要具有可描述性
5)变量名不能过长
6)变量名不能是中文或者拼音
7)官方推荐下划线体
5. name = input(“>>>”) ,name变量是什么数据类型?字符串类型
6. if条件语句的基本结构?
五种基本结构,单if,
if 条件:
执行语句
if条件:
else:
if 条件:
elif条件:
elif条件:
if 条件:
elif 条件:
else:
if条件:
if条件:
语句
7. while循环语句基本结构?
while 判断条件为真:
执行语句
else:
不被break中止,则循环完成后执行else语句
8. 写代码:计算 1 - 2 + 3 ... + 99 中除了88以外所有数的总和?
1-99:while循环
while循环内 除了88:if条件判断
-,+转换,if条件判断
88不进行加减,先进行88if条件判断(if镶嵌)
1 i = 1 2 sum = 0 3 while i <= 99: 4 if i == 88: 5 pass#或者sum+=0,因为是计算加0相当于pass 6 else: 7 if i % 2 == 0: 8 sum -= i 9 else: 10 sum +=i 11 i += 1 12 print(sum)
9. ⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化)
用户登录(用户交互input输入),
三次 while循环三次
循环内 if判断(设定检验值) 正确则break,错误则输出错误次数
name = 'rain' password = 520 i = 1 while i <= 3: user_name = input('your account') user_word = int(input('请输入密码')) if name == user_name and user_word ==password: print('登陆成功') break else: time = str(3-i) print('错误,您还可输入'+ time +'次') i +=1 else: print('您已经输错三次,已经锁定') print('over')
10. 简述ascii、unicode、utf-8编码关系?
ASCII码是最初的编码规则,由于ASCII用8位bit表示一个字符,不能包含亚欧字符,unicode码由16位bit表示一个字符,弥补了ASCII的不足,但仍不能包含万国字符,虽然后来升级位32位bit表示一个字符,但是又有浪费资源的缺陷,于是再次升级为utf-8编码,用8位,一个字节表示英文字符,用16位2个字节表示欧洲文字,用24位,3个字节表示中文文字
11. 简述位和字节的关系?
1字节(byte)包括8位(bit)
12. “⽼男孩”使⽤UTF-8编码占⽤⼏个字节?使⽤GBK编码占⼏个字节?
utf-8一个中文字符用三个字节表示,老男孩占9个字节,GBK一个中文字符用两个字节表示,老男孩占6个字符,UTF-8和国标GBK中英文字符都是1个字节,8位bit
13. 制作趣味模板程序需求:等待⽤户输⼊名字、地点、爱好,根据⽤户的名字和爱好进⾏任意现实 如:敬爱可亲的xxx,最喜欢在xxx地⽅⼲xxx
等待用户输入,先不用字典,用字符串+占位符
1 name = input('your name') 2 adress = input('input adress') 3 hobby = input('your hobby') 4 print(name + '最喜欢在'+ adress + ",叫喊"+ hobby)
14. 等待⽤户输⼊内容,检测⽤户输⼊内容中是否包含敏感字符?如果存在敏感字符提示“存在敏感字符请重新输⼊”,并允许⽤户重新输⼊并打印。敏感字符:“⼩粉嫩”、“⼤铁锤”
用户输入input
检测if
包含字符?in?
while True:
name = input('your account')
if '小粉嫩' in name or '大铁锤'in name:
print('存在敏感字符请重新输入')
continue
else:
print('注册成功')
break
15. 单⾏注释以及多⾏注释?
单行注释#
多行注释:三个单引号,或者三个多引号
'''内容'''
"""内容"""
16. 简述你所知道的Python3和Python2的区别?
print(‘’),2x可以不用括号
大环境区别,2x有很多php,c,java的书写陋习,2x源码混乱,重复代码多,不符合python优雅,简单清晰的宗旨
3x源码重整,优雅,简单,清晰
默认编码不同,2x默认ASCII编码,3x默认utf-8编码,可以显示中文
input(“”)不同,2x raw_input(''),3x input('')
数据类型,2x有长整形(超过整数范围Z自动转化位长整形),3没有长整形
17. 看代码书写结果:
a = 1>2 or 4<7 and 8 == 8
print(a)
思路:关系运算符高于逻辑运算符,not》》and》》or
a = false or true and true >>a=true >>print(true)
18.continue和break区别?
break跳出当前循环体,continue跳出当前循环,回到循环的判断条件
Day3默写代码:
Bit,Bytes,Kb,Mb,Gb,Tb之间的转换关系。
Unicode,utf-8,gbk,每个编码英文,中文,分别用几个字节表示。

浙公网安备 33010602011771号