wangxinnan 发表于 2019-5-11 10:39:58

零基础入门学Python(第一版)第四章总结

分支和循环

1、上边几章介绍的:
   temp = input(“xxx”)
   guess = int(temp)
可以使用:
   guess = int(input(“xxx”))简写,替换使用,意义相同,其中guess为自定义变量
2、elif语句的灵活利用:
   方法一:
   num = int(input(“输入分数:”))
   if 100 >= num >= 90:
      print(“A”)
   if 90> num >=80:
      print(“B”)
   if num >100 or num<80 :
      print(“错误”)
方法二:
   num = int(input(“输入分数:”))
   if 100 >= num >= 90:
      print(“A”)
   else:
      if 90> num >=80:
         print(“B”)
      else:
         print(“错误”)
方法三:
   num = int(input(“输入分数:”))
   if 100 >= num >= 90:
      print(“A”)
   elif 90> num >=80:
      print(“B”)
   else :
      print(“错误”)
上述方法可以看出,方法三是最简洁高效的方式。而方法一,由于属于并列判断,会不断判定是否符合,会消耗更多的CPU,浪费时间。方法二由于存在较多的缩进,容易产生误解或错误。
3、三元操作符:
例题1:
a = x if 条件 else y
   其中a为变量,x为赋值,当if后边条件为Ture时,前边a=x即为成立,否则赋值为y
   if x<y:
      small=x
   else:
      small=y
以上公式等同于small=x if x<y else y
例题2:
x, y, z = 6, 5, 4
if x < y:
    small = x
    if z < small:
      small = z
elif y < z:
    small = y
else:
    small = z
可转换为 small=x if (x<y and x<z) else (y if y<z else z)
从上述例题可以发现,当需要判断多项数值时,else后边可以并用二次的if判断,以此类推,在最后一个else后边亦可进行三次判断,来确认多项数值。
4、assert为断言,一般来说,用于程序中置入检查点(自检),如果后边条件为假时,会自动报错,便于判断编程的准确性,用于测试程序
5、for()函数,叫计数器循环
语法为:   for 目标 in 表达式:
                循环体
示例1:fav = ‘Fish’                     #:fav为自定义的变量
      for i in fav:                      #:i为自定义变量,fav后边要加冒号
         print(i,end‘ ’)               #:引号内为空格
   则显示打印出 F i s h
示例2:num = [‘123’,‘234’,‘34’,‘4’]
         for each in num:
            print(each,len(each))             #:len表示字符长度(数量)
则显示打印出
123 3
234 3
34 2
4 1
总结:上述示例中,for后边的目标为自定义变量,可以给出任何的值,in后边的表达式为fav、num这类的已赋值变量。当print后边只输入目标变量时,显示打印为赋值变量内容,如果后边加上逗号、以及len或者其他函数时,可以提供更多信息
6、range()函数,
语法: range( stop[,step=1])
释义:其中,第一个位置start表示开始的值,第二个位置stop表示结束的值,意思是从start开始,到stop结束。
      step=1,表示默认值为1,如果自行输入“2”,“3”等等,则从开始到结束之间,跳跃值为2或3,以此类推。
      如果range后边只有一个值,则默认从0开始

示例:range(5),则显示为range(0,5)
list(range(5)),,则显示为,list表示列表显示
如果和for函数结合,则可表示为:
      for i in range(1,9,2):
      print(i)
则显示为
1
3
5
7
意思是从1开始,到9结束,每次以2跳跃,注意的是9结束,但是最后的显示不会有9
7、break语句,作用是终止当前循环,跳出循环体
示例:
bingo = "帅哥"
answer = input("请输入要说的词:")

while True:
    if answer == bingo:
      break
    answer = input("猜错啦,再猜一次:")
   
print("猜对啦")
print("游戏结束")
--1、我们需要对变量bingo赋值,即确认答案
--2、确认变量answer与input括号内的内容(变量answer为自定义)
--3、通过while True语句,写入语言,break表示,当输入bingo内容时,循环结束,否则将一直重复answer定义的变量内容,有点像else的意思
8、continue语句,作用是终止本轮循环并开始下一轮循环
示例:for i in range(10):
    if i%2 !=0:
      print(i)
      continue

    i += 2
print(i)
   --1、通过for与range语句进行测试
   --2、当循环的数值除以上,余数不等于0的时候,打印i的值,否则显示i+2的值
   --3、其中,当条件成立时(数值除以2余数不等于0),直接显示i的数值,条件不成立时,则自动进行下方条件的运算,并显示。这里需要注意的是,并不是说条件不成立就不显示,会显示,但是会通过下方的条件继续运算,依然和ifelse有点类似。

{:10_266:}前边学的简单,后边开始慢慢复杂了,慢慢来

吴笑 发表于 2019-5-15 00:48:33

给你点赞   +1

xmy2806036716 发表于 2019-5-18 08:07:15

本帖最后由 xmy2806036716 于 2019-5-18 08:12 编辑

num = int(input("请输入分数:"))
if 100 >= num >= 90:
    print('A')
elif 90 > num >= 80:
    print('B')
else :
    print('错误')
这个对的吗

xmy2806036716 发表于 2019-5-18 08:08:29

用elif来代替多个if-else嵌套的繁琐。更简洁,

wangxinnan 发表于 2019-5-19 17:13:53

xmy2806036716 发表于 2019-5-18 08:07
num = int(input("请输入分数:"))
if 100 >= num >= 90:
    print('A')


没问题呀,对的吧

andy大宝 发表于 2019-5-19 21:04:01

加油!

w9k 发表于 2019-5-19 22:13:23

mark~

xmy2806036716 发表于 2019-5-21 09:36:38

wangxinnan 发表于 2019-5-19 17:13
没问题呀,对的吧

是的是的,我就是没看你的,我自己写写看的哈哈。小白
页: [1]
查看完整版本: 零基础入门学Python(第一版)第四章总结