计算机为什么可以做自动化任务,主要依赖于条件控制和循环。 条件控制 何为条件控制? 中午又到饭点的时间了,纠结吃什么已经成为日常条件反射。下面举个例子:那么中午吃什么
计算机为什么可以做自动化任务,主要依赖于条件控制和循环。
条件控制
何为条件控制?
中午又到饭点的时间了,纠结吃什么已经成为日常条件反射。下面举个例子:那么中午吃什么呢?
逻辑判断-True/False
人的大脑可以思考并判断中午吃什么,而计算机本身没有思考能力,要想让计算机自动化执行任务,必须依赖在程序中加入逻辑判断的逻辑,让计算机根据程序的指引决定该执行什么不该执行什么。
比较运算符
比较运算符,运算结果为True/False,例如:
#!/usr/bin/env python3# _*_ coding: utf-8 _*_
# @Author : qa.yw
# @Time : 2021/3/26 6:25 下午
# @File : 语句控制.py
# @desc :
a = 21
b = 10
c = 0
if (a == b):
print("1 - a 等于 b")
else:
print("1 - a 不等于 b")
if (a != b):
print("2 - a 不等于 b")
else:
print("2 - a 等于 b")
if (a < b):
print("3 - a 小于 b")
else:
print("3 - a 大于等于 b")
if (a > b):
print("4 - a 大于 b")
else:
print("4 - a 小于等于 b")
执行结果:
1 - a 不等于 b2 - a 不等于 b
3 - a 大于等于 b
4 - a 大于 b
逻辑运算符-not
布尔"非": 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。例子:
a = Trueprint(not a)
>> False
in
x in y: y包含x,则True; 否则Falsea = 'h'b = 'hello word'
print(a in b)
>> True
if...elif...else...
if <条件判断1>:<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>
比如判断是否成年的例子:
age = 20if age >= 6:
print('teenager')
elif age >= 18:
print('adult')
else:
print('kid')
>> teenager
循环
看一下下面的公式,你肯定见过吧。设想加入不知道这些数列公式,完全让你去计算前n个数之和,你该如何下手这些重复的加法运算。毫无疑问是非常痛苦的。
而计算机最大的优点就是可以不知疲倦地计算成千上万次重复运算,而这依赖于循环语句。
Python的循环有两种:
for循环
for循环需要依赖其他的数据结构list/tuple。本节先不详细这两个数据结构。
例子:计算前100个数字之和
total = 0for x in range(101):
total = total + x
print(total)
>> 5050
for x in ...循环就是把每个元素代入变量x,然后执行缩进块的语句。
Tips:range()函数:range(start, stop[, step])
参数说明:
start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
step: 步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
例子:
for x in range(5):
print(x)
>>
0
1
2
3
4
while循环
例子:计算前100个数字之和
total = 0x = 0
while(x<101):
total = total + x
x += 1
print(total)
>> 5050
在循环内部变量x不断自增,直到变为101时,不再满足while条件,循环退出。
break
在循环中,break语句可以提前退出循环。
n = 1while n <= 100:
if n > 10: # 当n = 11时,条件满足,执行break语句
break # break语句会结束当前循环
print(n)
n = n + 1
print('END')
continue
在循环过程中,也可以通过continue语句,跳过当前循环,直接开始下一次循环。
例子:打印10以内的奇数
for x in range(11):if x % 2 == 0:
continue
print(x)
>>
1
3
5
7
9