小虫的python路-第一个脚印-2
作者:互联网
周五,晴,记录生活分享点滴
参考博客:https://www.cnblogs.com/resn/p/5776403.html
Python版本:3.5
目录:
1.运算符
1)算数运算符
2)比较运算符
3)赋值运算符
4)逻辑运算符
2.最大值
3.表达式
4.短路原则
5.while循环
1)猜年龄(while版)
2)猜年龄(while-break版)
3)break的运用
4)continue的运用
6.while....else....语句
7.end作用 \r \n 含义
8.高度、宽度的自定义
9.嵌套循环
1)矩形排列
2)三角排列
3)九九乘法表
--
1.运算符
1)算数运算符:
+ - * / //(取整除) %(取余) **(指数:2**3-->2的3次方)
2)比较运算符:
>、 <、 >=、 <=、 ==(等于:表示两个变量的值是否一样)、!=(不等于)
1 >>> a = 5 2 >>> b = 3 3 >>> a > b # 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 4 True 5 >>> a < b # 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 6 False 7 >>> a <= b # 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 8 False 9 >>> a >= b # 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 10 True 11 >>> a == b # 检查两个操作数的值是否相等,如果是则条件变为真。 12 False 13 >>> a != b # 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 14 True
小结:关注一下最后两行,易混淆。
3)赋值运算符
= 、+=、 -=、 *=、 /=、 %=、 //=、 **=
1 >>> num = 2 2 >>> num += 1 # 等价于 num = num + 1 3 >>> num -= 1 # 等价于 num = num - 1 4 >>> num *= 1 # 等价于 num = num * 1 5 >>> num /= 1 # 等价于 num = num / 1 6 >>> num //= 1 # 等价于 num = num // 1 7 >>> num %= 1 # 等价于 num = num % 1 8 >>> num **= 2 # 等价于 num = num ** 2
4)逻辑运算符
not (否定/双否定)、and(交集/且)、 or(并集/或)
1 >>> a > b and a < b # 如果两个操作数都是True,那么结果为True,否则结果为False。 2 False 3 >>> a > b or a < b # 如果有两个操作数至少有一个为True, 那么条件变为True,否则为False。 4 True 5 >>> not a > b # 反转操作的状态,操作数为True,则结果为False,反之则为True 6 False
小结:如果not、and、or出现在同一指令中,正常顺序是从左到右,但推荐使用小括号进行先后顺序的区分。
2.最大值
思路:
- 输入三个数,
- 比较第一、二个数:如果第一个数大于第二个数,则第一个数为最大值,
- 将最大值同第三个数比较:如果最大值大于第三个数,则打印最大值即第一个数,反之打印第三个数,
- 如果2不成立,第一个数不大于第二个数,则设第二个数为最大值,
- 再将最大值即第二个数与第三个数相比较:如果第二个数大于第三个数,则打印最大值即第二个数,反之第三个数。
1 num1 = input("Num1:") 2 num2 = input("Num2:") 3 num3 = input("Num3:") 4 5 if num1>num2: 6 max_num=num1 7 if max_num>num3: 8 print("MAX NUM is",max_num) 9 else: 10 print("MAX NUM is",num3) 11 12 else: 13 max_num = num2 14 if max_num>num3: 15 print("MAX NUM is",max_num) 16 else: 17 print("MAX NUM is",num3)
小结:最大值 max_num的灵活运用,因为是三个数,按照正常运算逻辑,需要先比较其中的两个数,在与第三个数相比较。
3.表达式
运算符和操作数结合起来叫做表达式。
4.短路原则
对于and:如果前面的第一个条件为假,那么这个and前后两个条件组成的表达式 的计算结果就一定为假,第二个条件就不会被计算
对于or :如果前面的第一个条件为真,那么这个or前后两个条件组成的表达式 的计算结果就一定为真,第二个条件就不会被计算
小结:
- 因为and是且的关系,所以前面若假则全部为假,or为或的关系,所以前面为真则全部为真
- and、or、not 从左往右依次运行,推荐用小括号区分运行的顺序。
5.while循环
1)猜年龄(while版)
思路:
- 设置一个变量为正确的,
- 针对这个变量的while循环开始,
- 给出用户输入年龄的功能,
- 如果用户输入年龄正确,则打印结果(Yes),
- 第一个如果不成立呢(否则 如果),用户输入年龄偏大,则打印(Is bigger)结果,
- 前面的都不成立(否则),用户当前输入的年龄剩下最后一种可能,所输入年龄偏小,则打印(Is smaller)结果。
1 age = 50 2 3 flag = True 4 5 while flag : 6 user_input_age = int(input("Age is :")) 7 if user_input_age == age: 8 print("Yes") 9 flag = False 10 elif user_input_age > age: 11 print("Is bigger") 12 else: 13 print("Is smaller ") 14 15 print("End")
小结:针对猜年龄游戏,需要考虑到所有可能结果数,即大于、小于、等于三个可能,通过if、elif、else来引出。
2)猜年龄(while-break版)
在1)的基础上增加break命令,即如果用户输入年龄正确,则运行break命令,中断循环,打印(End)提示。
1 age = 50 2 3 while True: 4 user_input_age = int(input("Age is :")) 5 if user_input_age == age: 6 print("Yes") 7 break 8 elif user_input_age > age: 9 print("Is bigger") 10 else: 11 print("Is smaller") 12 13 print("End")
3)break的运用
break的作用: 结束循环,在死循环中,也可以通过设置一定的条件来结束循环。
1 num = 1 2 3 while num < 10: 4 print(num) 5 num += 1 6 if num == 5: 7 break
4)continue的运用
continue表示继续的含义,当运行到如果当前数字等于3时,continue指令出发,表示继续这个循环,而不输入打印结果
在if 命令不成立时,则输出打印结果。
所以打印结果为:2、4、5、6、7、8、9、10、11
1 num = 1 2 3 while num <=10: 4 num += 1 5 if num == 3: 6 continue 7 print(num)
6.while....else....语句
正常循环结束(无break时),执行else语句
1 num = 1 2 while num <= 10: 3 num += 1 4 if num == 5: 5 continue 6 print(num) 7 else: 8 print("This is else statement")
7.end作用 \r \n 含义
end="__" 默认不换行,最后的结尾是下划线(__)
换行符:
- \n (Linux系统),\r \n (Windows系统) , \r (Mac系统)
- \n 可以在python中默认指定为换行符,这行数据最后结尾的字符,是不可见的,但是可以指定它
- \n 同空格、制表符一样,都不可见
- \r 是windows的回车(Enter),回车表示当前行的第一个位置,加上\n 以后会移到下一行的第一个位置
- \n (Linux系统)移动到下一行 ,\r (Mac系统)移动到下一行
1 num1 = 0 2 3 while num1<=5: 4 print(num1,end="_") 5 num2 = 0 6 while num2<=7: 7 print(num2,end="-") 8 num2+=1 9 10 num1+=1 11 print() #print(end="\n")
小结:
- end=" " 为不换行标志,如果想得到横排的序列,需要输入end=" " ,
- print() 为换行标志,如果想得到竖排的序列,需要输入print()
- print() 即 print(end="\n")
8.高度、宽度的自定义
1 height = int(input("Height:")) 2 width = int(input("width:")) 3 4 num_height = 1 5 while num_height <= height: 6 num_width =1 7 while num_width <= width: 8 print("#", end="") 9 num_width += 1 10 print() 11 num_height += 1
小结:排列顺序是先从左到右,再从上到下依次排列
9.嵌套循环
1)矩形排列
1 height = int(input("Height:")) 2 width = int(input("width:")) 3 4 num2 = height 5 while num2 > 0: 6 7 num1 = width 8 while num1 >0: 9 print("#",end="") 10 num1 -= 1 11 print() 12 num2 -= 1
小结:
- 大体上与8相同,
- 其中的不同点是高度和宽度以其他变量的形式命名,易于区分;
- while循环的条件不同,8是小于等于用户所输入的值,这个是大于0,因为这个是while循环中引用的用户所输入的值,而8中应用的是一个固定的值。
2)三角排列
思路:
当进行赋值后,line=5,即tmp=5,早第二个(内部)while循环中进行tmp的循环,直到tmp不大于0为止,第一行结束。
line减一,即line=4,继续tmp=4,继续进行第二个while循环。
1 line = 5 2 while line>0: 3 4 tmp = line 5 6 while tmp>0: 7 print("*",end="") 8 tmp = tmp-1 9 10 print() 11 #print(line) 12 line -= 1
小结:输出顺序依次是先从左到右,再从上到下排列
3)九九乘法表
1 first = 1 2 while first<=9: 3 4 sec = 1 5 while sec <= first: 6 print( str(sec)+"*"+ str(first) +"="+str(sec * first), end="\t") 7 sec += 1 8 9 print() 10 first += 1
小结:
- 输出顺序依次是先从左到右,再从上到下排列
- 结果是一个式子,打印格式以拼接的方法进行,str表示把数据转换为字符串,end=“\t”表示不换行
标签:小虫,python,True,运算符,while,num,print,input,脚印 来源: https://www.cnblogs.com/chungzhao/p/12890590.html