python学习笔记2

python学习笔记2

一、流程控制函数if

if 条件一:
	执行语句一
elif 条件二:
	执行语句二
elif 条件三:
	执行语句三
...
else:
	执行语句
  • if也可以嵌套使用。

二、while循环

  • 基本结构

    while 循环条件:
       循环体
    
  • while循环基本原理

    当程序执行遇到while语句时:

    ①首先程序判断while后的条件是否为True,如果为True则进入②,否则进入③;

    ②执行循环体

    ③跳过循环体

    ​ 不难看出,如果条件设置不当,程序可能因为判断条件结果一直为True而进入死循环(即程序不断执行循环体)。

    # 死循环
    while True:
    	print('hello,')
        print('world')
    #程序运行后将一直打印hello,world
    
  • 终止循环的方法

    • 改变条件

      # 改变条件使上述死循环可以终止
      Flag = True
      while Flag:
      	print('hello,')
      	Flag = False
          print('world')
      # 程序运行后只打印一次hello,world
      
    • break

      # 加入break使上述死循环可以终止
      while Flag:
      	print('hello,')
          print('world')
          break
      # 程序运行后只打印一次hello,world
      
    • 系统命令

  • while还可以搭配else使用

    # 计算1+2+...+100
    sum = 0
    i = 1
    while i<101:
    	sum += i
        i += 1
    else:
        print('计算结果为:',sum)
    # 最终程序运行将打印出计算结果5050。
    

    注意!如果在while else结构中,循环体中有break语句,那么在执行break语句后,else后的程序内容将不会被执行。

    # 计算1+2+...+100
    sum = 0
    i = 1
    while True:
    	sum += i
        i += 1
        if i == 101:
            break
    else:
        print('计算结果为:',sum)
    print(0)
    # 此时程序运行将打印出0。这是因为else语句后的内容并未执行。
    
  • continue与break

    • break在循环体中一旦被执行,则立即跳出该循环,执行循环之后的语句。

    • continue在循环体中一旦被执行,则立即跳过循环体后续内容,进入下一次循环。

      flag = True
      while flag:
          print('666')
          flag = False
          continue
          flag = True
      # 程序运行结果为:666
      # 由于有continue语句,所以将True赋值给falg这个语句并没有执行。
      

三、格式化输出

​ 将一个字符串的某些位置变成动态可传入的。

  • 利用占位符%

    # 利用占位符%进行格式化输出
    name = 'Alice'
    age = 18
    hobby = '玩游戏'
    # 创建一个格式化输出的模板
    msg = '我叫%s,我今年%s岁了,我喜欢%s' % (name,age,hobby)
    print(msg)
    # 程序运行结果为:
    # 我叫Alice,我今年18岁了,我喜欢玩游戏
    

    一个容易犯错的地方:

    msg = '我叫%s,我今年%s岁了,学习进度1%' % ('Alice',18)
    # 上述程序会报一个valueerror,因为在格式化输出语句中,所有的%都会被认作一个占位符
    # 正确的写法如下:
    msg = '我叫%s,我今年%s岁了,学习进度1%%' % ('Alice',18)
    # 这里使用%%,前一个%表示对后一个%进行转义
    # 转义相当于告诉计算机:后面这个字符你别当成占位符
    

四、运算符:计算机运算种类有许多种,包括算数运算、比较运算、逻辑运算、赋值运算、成员运算、身份运算、位运算。

  • 算数运算符:+ - * /等

    # /为除法,会计算小数
    print(18/4) # 4.5
    # //为整除,相当于对结果向下取整(地板除法)
    print(18//4) # 4
    # %为取余运算
    print(18%4) # 2
    
  • 比较运算符:< > <= >= ==等

  • 赋值运算符:= += -=等

  • 逻辑运算符:and or not 在没有()的情况下,优先级:not>and>or

    print(1 or 2) # 结果为1
    print(1>2 and 3 or 4) # 结果为4
    # a or b 当a、b为整数时,a为真则等于a,否则等于b
    
  • 成员运算符:in

    a = [1,2,3]
    print(1 in a) # True
    print(4 in a) # False
    print('a' in a) # False
    

五、编码知识

  • ASCII码:包含所有的数字,字母,特殊符号
    • 一个字节表示所有的数字,字母,特殊符号
  • GBK:(国标)包含所有的数字,字母,特殊符号和中文
    • 一个字节表示所有的数字,字母,特殊符号
    • 两个字节表示中文
  • Unicode:(万国码)
    • 四个字节表示世界上所有文字,但是极度浪费空间
  • utf-8:Unicode的升级版
    • 一个字节表示英文
    • 两个字节表示欧洲文字
    • 三个字节表示中文
posted @ 2020-03-15 21:13  卡奇欧  阅读(93)  评论(0)    收藏  举报