文章目录
一、逻辑控制语句(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 = False name = 'luren' if name == 'python': # 判断变量是否为 python flag = 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=0 while num<=10: print(num) num+=1
- 运行结果
- 运行结果
-
-
循环练习:
-
通过输入框,输入账号和密码进行登录,给定管理员账户root密码123456 输入账号密码,正确提示登录,错误提示账号密码错误,错误三次即提示错误超过三次登录失败
-
num = 0 while num < 3: num += 1 username = input("请输入账号:") password = input("请输入密码:") if username == "root" and password == "123456": print("登陆成功") break elif 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)
- 运行结果
- 运行结果
-