if可以控制多条语句,后面可以跟着一个代码块,格式如下:
if 条件语句:
代码块
代码块前面缩进四个空格。if语句控制的是缩进部分。
用于接收用户输入数据,用户输入内容后,回车结束,用户没有敲回车程序一直停留在输入界面。敲回车后input()函数立即执行完毕,并保存所接收的结果为字符串。下面我们结合if语句完成一个程序。
程序要求,用户输入一定的工资数,如果工资大于2000每月,输出“你能养活自己了。”
salary=int(input(‘请输入你的工资:’))
if salery>=2000:
print(‘你可以养活自己了’)
紧跟if语句后面,用来执行if条件不满足时的结果。语句格式和if语句一样,代码块缩进。
salary=int(input('请输入你的工资:'))
if salary>20000:
print('有钱就是任性')
if salary>10000:
print('哥的工资也上万了')
if salary>5000:
print('还说的过去')
if salary > 2000:
print('你能养活自己了')
else:
print('你该加油了')
salary=int(input('请输入你的工资:'))
if salary>2000:
print('你能养活自己了')
if salary>5000:
print('还说的过去')
if salary>10000:
print('哥的工资也上万了')
if salary > 20000:
print('有钱就是任性')
else:
print('你该加油了')
如果想解决这个问题,需要加条件
salary=int(input('请输入你的工资:'))
if salary>20000 :
print('有钱就是任性')
if salary>10000 and salary<20000:
print('哥的工资也上万了')
if salary>5000 and salary<10000:
print('还说的过去')
if salary > 2000 and salary<5000:
print('你能养活自己了')
else:
print('你该加油了')
下面我们完成一个程序来练习以上知识点
假如一个狗狗5岁,那么他前两年的时间,一岁相当于人的10.5岁,后面每岁相当于人的4岁。那么5岁的狗狗就相当于人210.5+34=33岁。
现在,我们写一个程序,可以让用户输入任意的狗狗的年龄,来换算出狗狗相当于人的多少岁。
person_age=0 #定义人的年龄,并赋值待用。
dog_age=int(input('请输入狗狗年龄:')) #用input()函数接收用户输入数据,并强制转换为整型
if dog_age>0: # 用于检验输入数据是否为负数
if dog_age<=2:
person_age=10.5*dog_age
elif dog_age>2:
person_age=10.5*2
person_age+=(dog_age-2)*4
print('狗狗的年龄相当于人',person_age,'岁')
else:
print('你输入的数据不合法!!!')
格式
while 表达式:
代码块
循环三要素
i = 0
while i <20:
i+=1 # 更新条件表达式可以放在要执行的程序前,也可以放在后面,可根据需要选择
print('I love you')
else:
print(‘循环结束’)
print(‘I love you’)执行后,继续进行条件判断,如果条件符合,继续执行。直到条件不再符合,循环结束。如果有else语句,则执行else语句的内容。没有,则结束。
例题:求100内所有奇数的集合。
i = 0
a=0
while i <100:
i+=1
if i%2!=0:
a+=i
print('循环结束')
a=20
b=30
c=40
m=a if a>b and a>c else b if a>b and a>c else c if c>b and c>a else a
print(f'abc中的最大值是{m}')
a=10
b=20
c=30
m=a if a>b else b
n=m if m>c else c
print(f'{n}是最大值')
a=10
b=20
c=30
m=a if a>b and a>c else b if b>c else c
print(f'{m}是最大值')
水仙花数是指:一个三位数,每位上的数的三次幂之和刚好等于他本身。
如:13+53+3***3=153,153就是一个水仙花数。
答案:
i=99
while i<999
i+=1
if (i//100)**3+((i//10)%10)**3+(i%10)**3==i:
print(f'{i}是水仙花数‘)
else:
print('循环结束')
D:\Python38\python.exe D:/work/基础/Day05/课堂代码/while语句练习.py
153是水仙花数
370是水仙花数
371是水仙花数
407是水仙花数
循环结束
i=100
while i<1000:
if (i//100)**3+((i//10)%10)**3+(i%10)**3==i:
print(f'{i}是水仙花数‘)
i+=1
else:
print('循环结束')
质数概念:质数又叫素数,值除了1和它本身之外不能再被其他数整除的数。如:3,5,7,11,13等。1不是质数,也不是合数。合数就是指除了1与它本身之外还可以被其他的数整除。
答案:
i=1
j=0
num=int(input('请输入一个任意数让我来判断:'))
while i
i=2
flag=True
num=int(input('请输入一个大于2的数:'))
while i
这个程序稍微改动可以求某个范围内的质数。
num=0
#num=int(input('请输入一个任意数让我来判断:'))
while num<100:
num+=1
i=1
j=0
while i
D:\Python38\python.exe D:/work/基础/Day05/素数.py
2是质数
3是质数
5是质数
7是质数
11是质数
13是质数
17是质数
19是质数
23是质数
29是质数
31是质数
37是质数
41是质数
43是质数
47是质数
53是质数
59是质数
61是质数
67是质数
71是质数
73是质数
79是质数
83是质数
89是质数
97是质数
Process finished with exit code 0
学了列表以后可以把结果存放在一个列表内。
完毕