Python基础-流程控制语句
1、 布尔表达式
布尔表达式的值为真True,为假False。
布尔表达式 | 说明 | 布尔表达式 | 说明 |
---|---|---|---|
< | 小于 | and | 与,同时为true |
<= | 小于等于 | or | 或,其中一个为True |
> | 大于 | not | 非,为False时 |
>= | 大于等于 | in | 包含 |
== | 等于 | not in | 不包含 |
!= | 不等于 |
2、 if判断
通过判断某个变量是否符合条件,如果符合就执行相应的代码块,如果不符合就执行另一个代码块。示例:
number = 1
if number==1:
print('Hello Python')
elif number==2:
print('Hello World')
else:
print('Hello Hello')
3、 for循环
for循环是一种迭代循环机制,迭代即重复相同的逻辑操作,每次操作都是基于上一次结果而进行的。Python的for循环可以遍历任何序列的对象。示例:
# 冒泡排序
num = [1,5,12,33332,0,45,66,21,98,1,3]
for i in range(len(num) - 1):
for j in range(len(num) -i - 1):
if num[j] > num[j + 1]:
num[j], num[j + 1] = num[j + 1], num[j]
print(num)
4、 while循环
while循环是根据条件的判断结果而决定是否执行循环。只要条件判断结果为True,程序就会执行循环,直至条件判断结果为False。示例:
i = 5
while i > 0:
i=i-1
print(i)
else:
print("循环结束")
5、 跳出循环
continue:跳出当前循环,继续执行下一轮的循环
break:将整个循环终止
# 实现登录,账号名为admin,密码123,则提示“登录成功”,
# 如果账号或者密码错误,则提示“账号名或密码错误”并允许重新输入用户名和密码,
# 如果3次登录失败,则提示“登录失败”并退出程序。
count = 0
while 1:
user = input("请输入用户名:")
pwd = input("请输入密码:")
if not (user == "admin" and pwd == "123"):
count = count + 1
if count < 3:
print("账号名或密码错误")
else:
print("登录失败")
break
else:
print("登录成功")
break
6、 推导式
推导式又称解析式,这是python一种独有的特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体,数据序列是我们常说的可循环对象,如字符串、列表、字典和range对象等。推导式主要有列表推导式、集合推导式和字段推导式,不管哪种类型的推导式,其使用方法都是相似的。示例:
# 列表推导式
result = [x for x in range(10) if x > 5]
print(result) # 输出:[6, 7, 8,9]
# 集合推导式
result = {x for x in range(10) if x > 5}
print(result) # 输出:{8, 9, 6, 7}
# 字典推导式
result = {x:x for x in range(10) if x > 5}
print(result) # 输出:{6: 6, 7: 7, 8: 8, 9: 9}
7、 三目运算符
python的三元表达式也可以称为三目运算符,在语法上,它与其它编程语言的三目运算符有所不同。简单的理解,python的三目运算符是if语句的简化使用。示例:
number = 10
result = "Hello Python" if number >= 10 else "Hello World"
print(result)
# 上述代码等价于
number = 10
if number >= 10:
result = "Hello Python"
else:
result = "Hello World"
print(result)
涉及到循环嵌套和if嵌套。示例:
# 三目运算符的if语句嵌套
number = 10
result = 'Python' if number < 5 else ('World' if number ==5 else 'China')
print(result) # 输出:China
# 三目运算符的循环嵌套
number = 10
result = [x for x in range(10)] if number > 10 else {x for x in range(10)}
print(result) # 输出:{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}