控制语句
if
Python 中用 elif
代替 else if
,用:
和缩进
代替{}
,支持嵌套
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
num = 16
guess = 6
# print(type(guess))
# print(type(input('请输入你猜的数字:')))
while guess != num:
guess = int(input('请输入你猜的数字:'))
#
if guess == num:
print('right!')
elif guess < num:
print('small!')
elif guess > num:
print('large!')
input()获得的字符类型为str,所以需要
int()
强制转换为int,才能让guess和num进行比较
match…case…
Python中没有switch…case语句,Python3.10 版本添加了 match...case
,匹配到case后的内容,执行对应表达式,case _:
表示其他情况,相当于default:
match subject:
case <pattern_1>:
<action_1>
case <pattern_2>:
<action_2>
case <pattern_3>:
<action_3>
# 可以设置多个条件
case <pattern_4>|<pattern_5>|<pattern_6>:
<action_4>
case _:
<action_wildcard>
循环语句
while
Python中没有do...while...
while condition:
statements
sum = 0
a = 1
while a <= 100:
sum += a
a += 1
print('1+...100=', sum)
无限循环
设置表达式值永为true实现无限循环
a=1
while a=1:
statements
while…else
while <expr>:
<statement(s)>
else:
<additional_statement(s)>
for
for <variable> in <sequence>:
<statements>
for…else…
for <variable> in <sequence>:
<statements>
else:
<statements>
sites = ["Baidu", "Google","Runoob","Taobao"]
for site in sites:
if site == "Runoob":
print("菜鸟教程!")
break
print("循环数据 " + site)
else:
print("没有循环数据!")
print("完成循环!")
break
,跳出循环,不执行else后的内容
continue
,跳过本次循环,进行下一次循环
for n in range(2, 10):
# print('外部第', n, '次')
for x in range(2, n):
print('内部第', x, '次')
if n % x == 0:
# print(n, '等于', x, '*', n//x)
break
else:
# 循环中没有找到元素
print(n, ' 是质数')
a = [1, 2, 3, 4, 5]
b = range(2, 8, 2)
print('a列表:', end='')
for i in a:
print(i, end=' ')
print('\na列表:')
for i in range(len(a)):
print(i, a[i])
print('b列表:', end='')
for i in b:
print(i, end=' ')
range()
,创建整数列表
- range(start, stop, step)
- 参数对应开始,结束(不包含stop),步长(默认为1)
- start=stop时,列表内没有元素
len()
,返回对象长度或元素个数
lis=[1,2,'3','abc',345]
# 为什么可以是%s,不可以是%d?%i的i对应列表中的元素
re=''.join('%s' %i for i in lis)
print(re)
print([i*2 for i in range(5)])
#输出结果
123abc345
[0, 2, 4, 6, 8]
pass
空语句,保持程序结构完整性,不做任何操作,用作占位语句
while True:
pass