基础内容-2

一、 while 循环

while : 满足条件的情况下为死循环

  • 结构:
while 条件:
    循环结果
  • 实例
while True:
    print("一号")
    print("二号")
    print("三号")
  • 如何终止循环

    • 改变条件

      #实例
      flag = True
      while flag:
          print(1)
          print(2)
          flag = False
          print(4)
          print(5)
      
    • break:循环中遇到break时直接退出循环

      while True:
          print(1)
          print(2)
          break
          print(3)
          print(4)
      
      #只会输出1 2 不会输出 3 4
      
    • continue:跳过本次循环

      a = 0
      while a < 5:
          a += 1
          if a == 3:
              continue
          print(a)
      
  • 练习1:打印0~100的数字

    num = 0
    while num < 101:
        print(num)
        num += 1
    
  • 练习2:打印1+2+3....+100的结果

    num = 1
    count = 0
    while num < 101:
        count += num
        num += 1
    print(count)
    
  • while else 结构

    while 条件:
        循环体
    else:
        结果
    
    • 实例

      count = 1
      while count < 5:
          print(count)
          count += 1
      else:
          print("结束了。。")
      
    • 当break生效时,不会走到else

二、 格式化输出

% : 占位符

符号 说明
%s 格式化为字符串
%c 格式化字符及其ASCII码
%d 格式化整数
%u 格式化无符号整型
%f 格式化浮点数字,可指定小数点后的精度
%% 输出% (格式化字符串里包含百分号,必须用%%)
  • 实例:

    name = "小明"
    age = 14
    message = "你好,我叫 %s,年龄 %d" %(name,age)
    print(message)
    
  • 注意:括号里数量和顺序必须保持一致

  • 在格式化输出中要表达百分号,在这个百分号前再加个百分号

    name = "小明"
    age = 14
    message = "你好,我叫 %s,年龄 %d,进度1%%" %(name,age)
    print(message)
    

三、 运算符

3.1 运算符类别

  • 算数运算符
  • 逻辑运算符
  • 比较运算符
  • 复制运算符
  • 成员运算符
  • 身份运算符
  • 位运算符

3.2 算数运算符

运算符 描述
+
-
/
% 取模
**
// 取整除

3.3 比较运算符

运算符 描述
== 等于
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于

3.4 赋值运算符

运算符 描述
= 简单的赋值运算符
+= 加法赋值运算符,例: a += 2 等价于:a = a + 2
-= 减法赋值运算符,例: a -= 2 等价于:a = a - 2
*= 乘法赋值运算符,例: a *= 2 等价于:a = a * 2
/= 除法赋值运算符,例: a /= 2 等价于:a = a / 2
%= 取模赋值运算符,例: a %= 2 等价于:a = a % 2
**= 幂赋值运算符,例: a **= 2 等价于:a = a ** 2
//= 取整除赋值运算符,例: a //= 2 等价于:a = a // 2

3.5 逻辑运算符

运算符 描述
and
or
not

优先级:在没有()的情况下

not > and > or

同意优先级的情况下,从左到右依次计算

  • 情况1: 两边都是比较运算

    print(2 > 3 and 3 < 4 or 5 < 6)
    
  • 情况2:两边都是整数

    print(8 or 5)
    print(0 or 3)
    
    # x or y : x为真,值为x;x为假,值为y
    # x and y : x为真,值为y;x为假,值为x
    

in 和not in:判断元素是否在字符串、元组、列表或字典中

四、 编码

4.1 编码类别

  • ASCII:美国信息交换标准编码
  • 国标:中华人民共和国国家标准信息交换用汉字编码
  • GBK:GB码的扩展字符编码
  • Unicode:将世界上所有字符都收入的编码
  • UTF-8:根据不同字符选择编码长度

4.2 ASCII

  • 规定了一个字符用一个8位的二进制数表示(0000 0001)
  • 最多只能表示256个字符,即 2**8=256
  • 8bit = 1byte

ASCII编码

4.3 GBK 国标码

  • 规定一个字符用2个8位的二进制数表示,即16位(0000 0001 0001 0011)
  • 可以表示65535个字符,即 2**16 = 65535
  • 兼容了ASCII,扩充了中文字符

4.4 Unicode UTF-8

  • 号称收纳了世界所有字符的编码
  • 扩充到了32位,也就是4个8位的二进制数
  • 可以表示2**32个字符
  • 由于太过浪费,提出了UTF-8,可变长度的编码
  • UTF-8是对Unicode编码的压缩和优化,将所有字符进行分类:ASCII编码的内容用1个字节、欧洲字符用2个字节。。。

4.5 单位转换

8bit = 1byte

1024byte = 1KB

1024KB = 1MB

1024MB = 1GB

1024GB = 1TB

1024TB = 1PB

1024PB = 1EB

1024EB = 1ZB

1024ZB = 1YB

1024YB = 1NB

1024NB = 1DB

posted @ 2019-07-02 21:34  忘川的彼岸  阅读(219)  评论(0编辑  收藏  举报