python中的分支结构只有if语句,没有switch(switch能做的,if都能做)
1. 什么时候需要使用if
- 如果做某件事情(执行某段代码)需要满足某个条件才行,就考虑使用if
2.怎么使用if
结构一,if结构
- a. 语法1:
if 条件语句:
代码段1
其他语句
- b. 说明:
- | - |
---|---|
if | 关键字,是如果的意思 |
条件语句 | 任意一个有结果的语句,最好结果是布尔,若不是布尔值,在判断的时候会转换成布尔判断是否为True |
: | 固定写法,在python中,只要有冒号,冒号后面的第一行必须有缩进。冒号缩进组合形成代码段,相当于其他语言的代码段 |
代码段1 | 和if保持一个缩进的语句。可以是一行语句,也可以是多行语句 |
- c. 执行过程:
先判断条件语句的结果是否为True,如果为True,就执行代码段1,然后再执行后面的其他语句;如果为False,就不执行代码段1,直接执行if外边的其他语句.
age = 16
if age > 18:
print('你可以进网吧!') # 和if保持一个缩进的代码,都是满足if后边的条件才会执行的代码
print('======') # 没有和if保持一个缩进的代码,不管条件是否满足都会执行
print('=========') # return IndentationError: unexpected indent
- 总结: 需要满足某个条件才执行的语句就写在if里面,不管条件是否满足都要执行的语句,写在if外面
# 输入一个数,如果这个数能够被3整除,就打印:'xxx是3的倍数'
num1 = input('Enter num: ')
if float(num1) % 3 == 0:
print('%s是3的倍数' % num1)
结构二: if-else结构
- a. 语法:
if 条件语句:
代码段1
else:
代码段2
其他语句
-
b. 说明
else - 关键字,固定写法;相当于否则,不满足if条件的其他情况 -
c. 执行过程:先判断条件语句是否为True,如果为True,就执行代码段1,否则代码段2
# 练习:输入一个整数,如果这个数是偶数,就打印'xxx是偶数',不是偶数就打印'xxx是奇数'
num1 = input('Enter num: ')
if int(num1) % 2 == 0:
print('%s是偶数' % num1) # 满足条件才执行
else:
print('%s是奇数' % num1) # 不满足条件才执行
# 练习:输入一个字符串,判断字符串的开头是否是一个小写字母,如果是,将字符串第一个字符转换成大写字母并打印,否则直接打印
str1 = input('输入一个字符串:')
if 'z' >= str1[0] >= 'a':
print(str1.capitalize())
else:
print(str1)
结构三:if-elif-else结构
- a. 语法:
if 条件语句1:
代码段1
elif 条件语句2:
代码段2
elif 条件语句3:
代码段3
...
else:
代码段N
-
b. 说明:
elif - 关键字;在前面的条件不满足的前提下,判断其他条件是否满足 -
c. 执行过程:
先判断条件语句1是否成立,若成立直接执行代码段1,整个if结构结束,接着执行其他语句。
若条件语句1不成立,再判断条件语句2是否成立,如果成立,执行代码段2,整个if结构结束,接着执行其他语句。
以此类推,如果条件语句都不成立,就执行else后面的代码段n。 -
注意:
后面的条件语句的判断都是在条件不成立的前提下执行的
else不是一定要写,要根据情况后面的else结构可以没有!
salary = 20000
if salary <= 5000:
print('家中游!')
elif salary <= 10000:
print('同城游!')
elif salary <= 15000:
print('国内游!')
else:
print('国外游!')
print('=' * 20)
print(' ' * 2,'1. 添加学生')
print(' ' * 2,'2. 查看学生')
print(' ' * 2,'3. 修改学生信息')
print(' '* 2,'4. 删除')
print(' ' * 2,'5. 返回')
print('=' * 20)
choice1 = input('请输入操作:')
if choice1 == '1':
print(' '*2,'输入姓名、电话、年龄')
elif choice1 == '2':
print(' '*2,'2 -> 输入要查看学生的名字')
elif choice1 == '3':
print(' '*2,'3 -> 修改学生信息')
elif choice1 == '4':
print(' '*2,'4 -> 删除学完信息')
elif choice1 == '5':
print(' '*2,'退出')
print('='*20)
- 补充:python中可以使用三个双引号或者三个单引号括起来,来表示一个字符串;这周字符串中可以直接输入回车换行
网友评论