分支和循环

if

单分支

if condition:

​ 代码块

if后语句为真时,执行代码块

if 1<2: # if True:

​ print('1 less than 2') # 代码块

condition必须是一个bool类型,这个地方有一个隐式转换bool(condition),相当于False等价

if 语句这行最后,会有一个冒号,冒号之后如果有多条语句的代码块,需要另起一行,并缩进

iffordefclass等关键字后面都可以跟代码块

​ 这些关键后面,如果有一条语句,也可以跟在这一行后面。例如if 1>2: pass

多分支

if condition1:

​ 代码块1

elif condition2:

​ 代码块2

elif condition3:

​ 代码块3

......

else:

​ 代码块

a = 5

if a<0:

​ print('negative')

elif a==0: # 相当于 a >= 0

​ print('zero')

else: # 相当于 a > 0

​ print('positive')

多分支结构,只要有一个分支被执行,其他分支都不会被执行

前一个条件被测试过,下一个条件相当于隐含着这个条件

三元表达式

判断语句为真时执行的语句 if 判断语句 else 判断语句为假时执行的语句

例如

a=int(input(">>>"))

print(">5") if a>5 else print('<=5')

或者

s='>5' if a>5 else '<=5'

print(s)

如果a>5,则s='>5',否则 s='<=5'

也可以直接print

print('>5' if a>5 else '<=5')

while循环

while循环多用于死循环,或者不明确知道循环次数的场景

while cond:

​ block

while True: # 死循环

​ pass

a = 10

while a: # 条件满足则进入循环

​ print(a)

​ a -= 1

for循环

for element in iterable: # 可迭代对象中有元素可以迭代,进入循环体

​ block

for i in range(0, 10):

​ print(i)

range range(stop)或者range(start, stop[,step])

可以生成一个序列,遍历它就可以得到这个序列的一个个元素

前包后不包

range(i),i大于0,相当于计数器

continue

continue跳过当前循环当次循环,继续下一次循环

只跳过本次循环

break

结束当前循环

跳过整个循环

exit()

结束整个程序

continue和break是循环的控制语句,只影响当前循环,包括while、for循环

如果循环嵌套, continue和break也只影响语句所在的那一层循环

continue和break 只影响循环,所以 if cond: break 不是跳出if,而是终止if外的break所在的循环

分支和循环结构可以嵌套使用,可以嵌套多层

else字句

如果循环正常结束,else子句会被执行,即使是可迭代对象没有什么元素可迭代

一般情况下,循环正常执行,只要当前循环不是被break打断的,就可以执行else子句。哪怕是range(0)也可以执行else子句

字符串拼接

str(1) + ',' + 'b' # 都转换成字符串拼接到一起

"{}-{}".format(1, 'a') # {}就是填的空,有2个,就使用2个值填充

# 在3.6后,可以使用插值

a = 100;

b = 'abc'

f'{a}-{b}' # 一定要使用f前缀,在大括号中使用变量名

format方法是用format中的字符串填入{}中

posted @ 2022-12-03 00:16  厚礼蝎  阅读(49)  评论(0编辑  收藏  举报