文章目录
- 一、逻辑控制语句(if、elif、else)
- 1.1 单个条件的逻辑判断语句
- 1.2 多个条件的逻辑判断语句
- 二、循环语句
- 2.1 while 循环
- 2.2 for 循环
- 2.2.1 循环使用 else 语句
一、逻辑控制语句(if、elif、else)
Python 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。
-
注意:
1、python 不支持 switch 语句,所以多个条件判断分支的写法只能用 if
2、elif 对应 Java 中的 else if
3、python 编写的程序代码都是自上而下执行,除非代码控制,不然不会改变
4、需要注意代码层级,如果层级不对会报错
1.1 单个条件的逻辑判断语句
-
python 单个条件的逻辑判断语法,如下所示:
-
if 判断条件:执行语句……# 或者if 判断条件:执行语句……else:执行语句……
-
代码示例:
-
flag = Falsename = 'luren'if name == 'python': # 判断变量是否为 pythonflag = True # 条件成立时设置标志为真print('welcome boss') # 并输出欢迎信息else:print(name) # 条件不成立时输出变量名称
- 运行结果:luren
-
-
-
1.2 多个条件的逻辑判断语句
-
python 多个条件的逻辑判断语法,如下所示:
-
if 判断条件1:执行语句1……elif 判断条件2:执行语句2……elif 判断条件3:执行语句3……else:执行语句4……
-
代码示例:
-
num = 5 if num == 3: # 判断num的值print 'boss' elif num == 2:print 'user'elif num == 1:print 'worker'elif num < 0: # 值小于零时输出print 'error'else:print 'roadman' # 条件均不成立时输出
- 运行结果:roadman
-
-
-
二、循环语句
-
循环语句:相同的操作执行多次,直到满足条件为止。
循环类型 描述 while 循环 在给定的判断条件为 true 时执行循环体,否则退出循环体。 for 循环 重复执行语句,直到满足条件为止 嵌套循环 顾名思义,就是在循环中写循环
-
循环控制语句:循环控制语句可以更改语句执行的顺序。
控制语句 描述 break 语句 在语句块执行过程中终止循环,并且跳出整个循环。 continue 语句 在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。 pass 语句 pass是空语句,是为了保持程序结构的完整性。
2.1 while 循环
-
while 循环语法,如下所示:
-
while 条件表达式:循环体语句
-
-
while 循环,输入0~10的数字,代码示例如下所示:
-
num=0while num<=10:print(num)num+=1
- 运行结果
-
-
循环练习:
-
通过输入框,输入账号和密码进行登录,给定管理员账户root密码123456 输入账号密码,正确提示登录,错误提示账号密码错误,错误三次即提示错误超过三次登录失败
-
num = 0while num < 3:num += 1username = input("请输入账号:")password = input("请输入密码:")if username == "root" and password == "123456":print("登陆成功")breakelif username == "" and password == "":print("账号密码不允许为空")else:if num == 3:print("登录失败")else:print("账号密码错误,请重新输入!!")
- 运行结果:
- 输入三次错误密码
- 输入两次次错误密码,最后输入正确密码
- 直接输入正确结果
- 运行结果:
-
-
2.2 for 循环
-
for 循环语法,如下所示:
-
for 变量 in 可迭代对象:循环体语句
-
Python包含以下几种可迭代对象:
-
1. 字符串,列表,元组
-
2. 字典
-
3. 迭代器对象(iterator)
-
4. 生成器函数(generator)
-
5. 文件对象
-
-
-
-
for循环,输入字符中有那些字符,代码示例如下所示:
-
for letter in 'Python语言的for循环': print("当前字母: %s" % letter)
- 运行结果
-
2.2.1 循环使用 else 语句
-
在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
-
for num in range(10, 20): # 迭代 10 到 20 (不包含) 之间的数字for i in range(2, num): # 根据因子迭代if num % i == 0: # 确定第一个因子j = num / i # 计算第二个因子print('%d * %d 等于 %d' % (i, j, num))break # 跳出当前循环else: # 循环的 else 部分print('%d 是一个质数' % num)
- 运行结果
- 运行结果
-