Python基础语法—— 条件语句(if)+循环语句(for+while)
Posted 郭怀远
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础语法—— 条件语句(if)+循环语句(for+while)相关的知识,希望对你有一定的参考价值。
文章目录
条件语句
if - else
Python中的 if-else 语法格式
if 条件1:
条件1满足执行的语句
elif 条件2:
条件2满足执行的语句
else:
条件1和2都不满足执行的语句
必定执行的语句
注意:Python的条件语句的写法和很多编程语言不太一样
- if 后面的条件表达式没有
()
,使用:
作为结尾 - if/else命中条件后要执行的语句块,使用4个空格或者Tab进行缩进,并没有使用花括号这么一说
- 对于多分支语句,写作 elif
示例
tmp = input("你要好好学习请输入 1,你要天天摆烂请输入 2 ——> ")
if tmp == '1':
print('好好学习你可以找一份好工作')
elif tmp == '2':
print('天天摆烂可能就不好找工作')
else:
print('输入错误')
if嵌套
num1 = int(input('请输入第一个数字:'))
num2 = int(input('请输入第二个数字:'))
if num1 < 10:
if num2 < 10:
print('你输入的是个位数')
else:
print('你输入的不是个位数')
判断闰年
year = int(input('请输入一个年份: '))
if (year % 400 == 0) or (year % 4 == 0 and year % 100 != 0):
print(f'year是闰年')
else:
print(f'year不是闰年')
空语句 (pass)
有的时候我们希望条件满足的时候啥都不做,但Python对代码的缩进要求比较高,不能啥都不写,也不能写个注释。
错误示例:
age = input('请输入你的年龄')
if age != '18':
#错误示例
else:
print(f'你的年龄为age')
正确做法,加上 pass
关键字
age = input('请输入你的年龄')
if age != '18':
pass
else:
print(f'你的年龄为age')
pass关键字表示空语句,并不会对程序的执行有任何影响,只是占一个位置
循环语句
while 循环
语法格式:
while 条件:
循环体
- 条件为真执行循环体
- 条件为假结束循环
求 1!+2!+3!+n!
num = int(input('请输入一个数,求1!+到这个数的阶乘: '))
result = 0
count = 1
tmp = 1
while num >= count:
result += tmp
count += 1
tmp *= count
print(result)
for循环
基本语法:
for 循环变量 in 可迭代对象
循环体
注意:
- Python的for循环和C/Java语言不同,没有“初始化语句”、“循环条件判定语句”、“循环变量更新语句”,而是变得更加简单
- 所谓的“可迭代对象”,指的是内部包含多个元素,能一个一个把元素取出来的特殊变量
示例:
for i in range(1, 11):
print(i, end=" ")
- range函数,能够生成一个可迭代对象,生成的范围是 [1,11),也就是左闭右开的一个区间
- end是表示每次打印后结尾加什么,默认是加个换行符**\\n**
range函数另一种写法
# 打印 2 4 6 8 10
for i in range(2, 11, 2):
print(i, end=" ")
- range第一个参数为开始数字
- 第二个参数为结束数字
- 第三个参数为步长,类似于 i+=2
同样步长还可以设定为负数
for i in range(10, 0, -1):
print(i, end=" ")
continue&break
continue 表示结束这次循环, 进入下次循环
for i in range(1, 11):
if i % 2 == 0:
continue
print(f'第i天')
break表示直接跳出单前循环
count = 0
result = 0
while True:
tmp = input('请输入多个数字求和,输入;结束: ')
if tmp == ';':
break
tmp = int(tmp)
result += tmp
count += 1
print(f'你一共输入了count个数字,它们的和为result')
循环嵌套
输出九九乘法表
for i in range(1, 10):
for j in range(1, 10):
print(f'i*j=i*j ', end='')
print()
以上是关于Python基础语法—— 条件语句(if)+循环语句(for+while)的主要内容,如果未能解决你的问题,请参考以下文章