04 Python之while循环/格式化输出/运算符/编码

时间:2021-01-12 15:12:21

1. while循环

  while 条件:

    循环体(break,continue)

  else:

    循环体(break,continue)

  break:彻底干掉一个循环,直接跳出.

  continue:停止当次循环,继续执行下一次循环.

while True:
content = input("你要输入的内容,输入Q退出:")
if content =""
continue #如果输入为空,会执行下一次循环,接着出现 你要输入的内容:
if content = "Q":
break # 退出程序,直接跳出循环
print("你想对打野说:",content)

2. 格式化输出

name = input("请输入你的名字:")
address = input("请输入你的家庭住址:")
wife = input("你女朋友叫什么:")
#格式化输出:
print("我叫%s,我住在%s,我女朋友叫:" % (name,address,wife))
#新版格式化输出:
print(f"我叫{name},我住在{address},我女朋友叫{wife}")

%s 占位 表示字符串的占位,全能的占位

%d 只是表示数字的占位

坑来了:  如果使用了格式化输出,%就是占位符,如果想正常显示% 则%%  %%转义.

print("我叫%s,我已经学习了31%%的python内容了" % "麻花藤")

3. 运算符

and : 并且,如果左右两端全为真,结果才是真.

or   :  或者,如果左右两端有一个为真,结果就是真.

not :  非,非真既假,非假既真

混合运算的运算顺序:

() => not => and => or

当出现x or y 时,判断 x 是否为0 ,如果 x == 0 ,则结果为 y ;否则结果为 x.

当出现x and y时,与 x or y 相反

成员运算:

content = input("请输入你的评论:")
if "马化腾" in content:#content中包含了XXX.
print ("你的评论不合法")
else:
print("你的评论是合法的") ad = input("请输入你的广告语:")
if "最" in ad and "第一" in ad and "世界" in ad:
print("您的广告不符合广告法")
else:
print("您的广告审核通过")

4. 编码

1. ASCLL码   8bit  1byte(字节)   2**8  有256个码位 只用到了7bit,用到了前128个 最前面的一位是0

2. 由于ASCLL码没有中文,所以中国人对编码进行了统计,自己设计对ASCLL进行扩展 ANSI 16bit->清华同方->GBK  GBK中放的是中文编码,16bit   2byte  兼容ASCLL

3. 对所有编码进行统一  Unicode 万国码. 32bit 4byte  够用了 但是太浪费了

4. UTF-8 可变长度的Unicode

  英文 1byte

  欧洲文字 2byte

  中文 3byte

1 byte = 8bite

1kb = 1024 bite

1024k = 1mb

1024mb = 1gb

1024gb = 1tb

1024tb = 1pb