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.

11 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

优先级,not>and>or, --True

2not 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)
1-2+3...99跳过88

 

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. 简述asciiunicodeutf-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. 简述你所知道的Python3Python2的区别?

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.continuebreak区别?

break跳出当前循环体,continue跳出当前循环,回到循环的判断条件

 

Day3默写代码:

Bit,Bytes,Kb,Mb,Gb,Tb之间的转换关系。

Unicodeutf-8gbk,每个编码英文,中文,分别用几个字节表示。

 

posted @ 2018-04-27 20:50  dmyHero  阅读(167)  评论(0)    收藏  举报