Python基础(二),管理基础学性考任务二


今日主要内容

  • while 循环
  • 格式化输出
  • 基本运算符
  • 编码初识

一、while循环

(一)什么是while循环

  • 循环就是反复,不断的重复某件事情,比如我们日常听歌单曲循环、列表循环
  • 在程序中如果想要重复执行某些代码,不能说执行100次就重复敲100次代码,这里就利用到循环
  • 在python中循环代码利用while关键字

(二)while循环的格式

  • while
while condition:
    循环体
  • while else
while condition:
    循环体
else:
    代码块

(三)两种循环思想

(四)break和continue

  • break 和 continue 下方的代码都不会被执行

(五)两种格式的区别

  • while else 中 else下的代码块属于while

  • while循环结束后的代码块与while无关

    • while
    count = 1
    while count < 5:
      print(count)
      count = count + 1
      if count == 3:
          break
    print("疯牛涕淌的郭老湿!")  # break跳出执行
    • while else
    count = 1
    while count < 5:
      print(count)
      count = count + 1
      if count == 3:
          break
    else:
      print("疯牛涕淌的郭老湿!")  # break跳出不执行

(六)while嵌套

  • break只终止当前循环,当break在内层while中,对外层while无影响

  • 理解程序自上而下运行的机制

    count_a = 0
    count_b = 0
    while count_a < 5:
        print("a" + str(count_a), end=" ")
        count_a += 1
        while count_b < 3:
            print("b" + str(count_b), end=" ")
            count_b += 1
            if count_b == 1:
                break
    
    输出结果:a0 b0 a1 b1 b2 a2 a3 a4 
    

二、格式化输出

(一)什么是格式化输出

  • 先看一个例子

    • 输入每个人的信息,并以下面代码块格式输出
    *******info********
    name:ZXD
    age:23
    sex:nan
    hobby:年轻漂亮小姐姐
    *******************
    
    • 直接用print输出
    a = "*******info********"
    b = "name:"
    c = "age:"
    d = "sex:"
    e = "hobby:"
    f = "*******************"
    name = input("name:")
    age = input("age:")
    sex = input("sex:")
    hobby = input("hobby:")
    print(a)
    print(b + name)
    print(c + age)
    print(d + sex)
    print(e + hobby)
    print(f)
    
    • 很长很麻烦,如果利用格式化输出,将变成这个样子
    name = input("name:")
    age = input("age:")
    sex = input("sex:")
    hobby = input("hobby:")
    
    info = '''*******info********
    name:%s
    age:%s
    sex:%s
    hobby:%s
    *******************
    '''
    
    print(info % (name, age, sex, hobby))
    
    • 还可以这样写(python3.6及以上版本可以使用f)
    name = input("name:")
    age = input("age:")
    sex = input("sex:")
    hobby = input("hobby:")
    
    info = f'''*******info********
    name:{name}
    age:{age}
    sex:{sex}
    hobby:{hobby}
    *******************
    '''
    
    print(info)
    
  • 格式化输出就是:可以利用固定的格式,需要变化的部分利用占位符占位,在%后按照占位顺序依次输入

(二)格式化输出写法

  • 格式化输出共有三种写法

    • 占位符法
    • 小f(仅支持python3.6及以前版本)
    • format() 方法
    md1 = "My name is %s, I'm %s years old." % (name, age)
    
    md2 = f"My name is {name}, I'm {age} years old."
    
    md3 = "My name is {}, I'm {} years old.".format(name, age)
    
  • 转义符:两个相同的符号就是转义符,如 %%

    t = "今日笔记完成进度为%d%%" % count  # %% 代表 %
    
  • 占位符类型

    • %s:可以填充字符串,也可以填充数字
    • %d:可以填充数字

三、基本运算符

(一)比较运算符

  • > 大于
    < 小于
    >= 大于等于
    <= 小于等于
    == 等于
    != 不等于
    <> 不等于
  • a = 10
    b = 5
    print(a > b)  # True
    print(a < b)  # False
    print(a >= b)  # True
    print(a <= b)  # False
    print(a == b)  # False
    print(a != b)  # True
    print(a <> b)  # True
    

(二)算术运算符

  • +
    -
    *****
    /
    // 整除(地板除)
    ******
    % 模(取余)
  • a = 4
    b = 2
    print(a + b)  # 6
    print(a - b)  # 2
    print(a * b)  # 8
    print(a / b)  # 2
    print(a // b)  # 2
    print(a ** b)  # 16
    print(a % b)  # 0
    

(三)赋值运算符

  • = 等于
    += 加等于
    -= 减等于
    *= 乘等于
    /= 除等于
    //= 整出等于
    ********=** 幂等于
    %= 模等于
  • 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
    a %= 2  # 等价于:a = a % 2
    

(四)逻辑运算符

  • and
    or
    not

(五)成员运算符

  • in
    not in 不在
  • name = "ZXD"
    print("ZXD" in name)  # True
    print("zxd" in name)  # False
    

四、编码初识

(一)ASCII码

  • 最早的编码,包含数字 + 字母 + 特殊字符
  • 每个字符用一个字节(8位)来表示

(二)GBK

  • 国标码,涵盖ASCII码,只能中国使用
  • 英文:一个字节(8位)表示
  • 中文:两个字节(16位)表示

(三)Unicode

  • 万国码,涵盖所有国家语言
  • 每个字符都用四个字节(32位)表示
  • 浪费资源,浪费内存

(四)UTF-8(最流行的编码集)

  • 可变长度编码
  • 英文:一个字节(8位)表示
  • 欧洲文字:两个字节(16位)表示
  • 中文:三个字节(24位)表示

(五)单位转换

  • 1字节 = 8位
  • 1Bytes = 8bit
  • 1024Bytes = 1KB
  • 1024KB = 1MB
  • 1024MB = 1GB
  • 1024GB = 1TB
  • 1024TB = 1PB

相关内容

    暂无相关文章

评论关闭