DAY2 Python的基础-2

一. while循环

  (1)while循环有称为无限循环。

  (2)while 循环的具体表示:

     while   条件表达式

        循环体

  while循环在条件表达式为True的情况下,会循环执行循环体重的代码,所以要学会刹车。

  # while循环的刹车方式:

  1.改变条件表达式,保证条件表达式一定有假的情况。例如:设置标志位flag...

  2.break语句跳出循环,通常与while True死循环一起用。

 

二. 格式化输出

  格式化输出就好比是“字符串的动态替换”。

方式一:%占位符,%s代表字符串类型,%d代表数字类型。

  msg = '你的名字是%s,年龄%s岁,性别:%s'%(name,age,sex)

方式二:format方法

  msg = '你的名字是{},年龄{}岁,性别:{}'.format(name,age,sex)

  msg = '你的名字是{name},年龄{age}岁,性别:{sex}'.format(name=name,age=age,sex=sex)

方式三:python3.6支持的新特性,f'string'

  msg = f'你的名字是{name},年龄{age}岁,性别:{sex}'

 

三.基本运算符

#算术运算符:

  +   加

  -   减

  *   乘

  /   除

  % 求余

  **  乘方

  //  地板除,取整

 

# 比较运算符:

  >  大于

  >=  大于等于

  <  小于

  <=  小于等于

  !=  不等于

  ==  等于

 

#  逻辑运算符:

  and  与

  or  或

  not  非

(1)第一种情况:前后条件都是比较运算符

   1. and 同真才为真,or有真就为真,not取反。

   2.谨记优先级: () >  not > and > or

   3.都是比较运算的只会返回True和False其中一个

  例子:print(1 < 2 and 3>4 or 8<6 and 9>5 or 7>2)

   解答: 有两个优先级,因为and优先级大于or,所以先比较and,再比较or。

 

(2)第二种情况:前后两边都是数值

  1.先考虑优先级

  2. x or y,如果 x 为 True,则返回x; and 与 or 相反, 如果x为True,返回y

  3. 数值0为False,非0数值都是True

  例子:print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)

 

(3)第三种情况: 前后两边,比较运算和数值混合

  1. 先考虑优先级

  2. or前面x如果是数字(并且x为真)则x返回数字。前面x是比较,则x返回真假布尔值。and 相反。

  例子1:print(1 > 2 or 3 and 4 < 6)   #True

  解答: 先考虑优先级,先运算and,3 and 4 < 6 ,等到True, 1>2 or True , 得到True。

  例子2:print(2 or 3 and 4 < 6)  # 2

  解答:先考虑优先级,3 and 4 < 6 得到True,然后看 2 or True,or前面x如果是数字(并且x为真)则x返回数字

 

四.编码初始

ascii : 最初版本的编码,所有的英文字母,数字,特殊字符。

  • 一个字符占8位,一个字节,但是第8位都是0,因为第8位是扩展位。
  • 只有2 ** 8 = 256种可能,所以远远不能够满足当今时代的需求。

unicode: 万国码。

  起初:

    一个字符占16位,两个字节。

    一共有2**16 = 65535中可能,但是仍然不能够满足中文汉字的需求。

  改版:

    一个字符占32位,4个字节。

    一共有2**32 = xxx种可能,虽然是能够包含全世界的文字符号,但是一个英文本来只是一个字节,现在用4个字节来存储,造成了巨大的资源浪费。

 

utf-8:可变长的字符编码

  一个英文字符占一个字节,一个欧洲文字占两个字节,一个中文汉字占三个字节。

gbk:
  utf-8还没升级出来,unicode又占空间的间隙中,中国人自己发明了gbk国标。
  gbk中只包含中文,英文(英文,数字,特殊字符)。
  一个英文一个字节
  一个中文两个字节

 

  

 

posted @ 2018-08-03 17:25  hehehe1994  阅读(135)  评论(0编辑  收藏  举报