Python(二):分支和循环
程序员文章站
2022-04-06 15:08:07
...
文章目录
2 分支与循环
本节目的是熟悉Python语言的顺序、分支、循环三种流程控制语句。
2.1 语句块
不同于C/C++中使用{}
来创建语句块,Python依靠“缩进和对齐”来表示语句块的范围,这一方面也是为了规范代码格式而设置的规则。同时为了很好的区别语句块,因适当的配合空行使用。
2.2 if…else…分支语句
需要注意的是区别于C/C++,python中的分支语句需要使用:
。
# 基本用法
score = int(input("请输入分数:"))
if score >100 or score < 0 : # and or not 与或非运算符
print("error score!")
if score < 100 and score >= 60 :
print("pass!")
if 60 > score >0 :
print("fail!")
请输入分数:60
pass!
# 配合else,注意else if需要缩写为elif
score = int(input("请输入分数:"))
if score >100 or score < 0 :
print("error score!")
elif score < 100 and score >= 60 :
print("pass!")
else :
print("fail!")
请输入分数:10
fail!
# 使用嵌套语句
score = int(input("请输入分数:"))
if score >100 or score < 0 :
print("error score!")
else :
if score < 100 and score >= 60 :
print("pass!")
else :
print("fail!")
请输入分数:10
fail!
2.3 三元操作符
基本语法为a = x if 条件 else y
,如果条件为真就执行a = x
,否则就执行a = y
score = int(input("输入判断条件"))
x = 1 if score == 0 else 2
print(x)
输入判断条件1
2
2.4 while语句
除了:
外,与C/C++基本无异,但是没有do...while...
语句
i = 1
while i <= 3 :
print(i)
i += 1 # 不支持 i++ 这种写法
1
2
3
2.5 assert断言
当assert
后面的条件语句为真时,程序正常执行,否则程序会报错AssertionError
x = int(input("输入一个被除数:"))
assert x != 0
print(1/x)
输入一个被除数:0
---------------------------------------------------------------------------
AssertionError Traceback (most recent call last)
<ipython-input-21-357b0a2310a0> in <module>
1 x = int(input("输入一个被除数:"))
----> 2 assert x != 0
3 print(1/x)
AssertionError:
2.6 range & for
for循环语句的可以对任何可迭代对象进行循环,例如
str = "time is money!"
for each in str : # 对字符串循环
print(each, end="") # 指定末尾为无,而不是换行
print()
lt = [ "wuyao", 22, [1997, 6],"male"]
for each in lt: # 对列表循环
print(each)
time is money!
wuyao
22
[1997, 6]
male
为了实现类似C/C++那样循环指定次数,则可以配合使用range对象来使用,其原型为range([start=0,] stop [,step=1])
,会返回一个可迭代的序列。
a=range(1,9,2) # 创建一个range对象,
a
range(1, 9, 2)
type(a) # 获取类型信息
range
dir(a) # 查看内建方法
['__bool__',
'__class__',
'__contains__',
'__delattr__',
'__dir__',
'__doc__',
'__eq__',
'__format__',
'__ge__',
'__getattribute__',
'__getitem__',
'__gt__',
'__hash__',
'__init__',
'__init_subclass__',
'__iter__',
'__le__',
'__len__',
'__lt__',
'__ne__',
'__new__',
'__reduce__',
'__reduce_ex__',
'__repr__',
'__reversed__',
'__setattr__',
'__sizeof__',
'__str__',
'__subclasshook__',
'count',
'index',
'start',
'step',
'stop']
配合for循环语句实现类似C/C++的操作,可参考如下
for i in range(5) : # 配合默认值,则具体为(0:4)
print(i,end=" ")
print()
for i in range(-1,6,2) : # 具体为(-1:2:6)
print(i,end=" ")
0 1 2 3 4
-1 1 3 5
2.7 break
同样用来跳出当前循环。
for i in "wuyao":
if i == "y":
break
print(i,end = " ")
w u
2.8 continue语句
终止本轮循环。
for i in "wuyao":
if i == "y":
continue
print(i,end = " ")
w u a o
上一篇: python入门--分支和循环
下一篇: 【Python】4、循环和分支学习笔记