欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

学习笔记005-if条件表达式、while循环

程序员文章站 2022-03-03 10:56:35
Python学堂笔记005一、运算符的优先级b = 2 or 3 and 4# or和and 优先级一样高,从左往右运算,结果4# or比and 优先级高,从左往右运算,结果4# and比or 优先级高,结果2# 结论发下 and 的优先级比 or的优先级高print(b)二、条件控制语句1、if语句执⾏的流程:if语句在执⾏时,会先对条件表达式进⾏求值判断,如果为True,则执⾏if后的语句如果为False,则不执⾏语法:if 条件表达式:代码块代码块:代码块中...

Python学堂笔记005

一、运算符的优先级

b = 2 or 3 and 4
# or和and 优先级一样高,从左往右运算,结果4
# or比and 优先级高,从左往右运算,结果4
# and比or 优先级高,结果2
# 结论发下 and 的优先级比 or的优先级高
print(b)

二、条件控制语句

1、if语句

执⾏的流程:
if语句在执⾏时,会先对条件表达式进⾏求值判断,
如果为True,则执⾏if后的语句
如果为False,则不执⾏

语法:if 条件表达式:
			代码块
代码块:
代码块中保存着一组代码,同⼀个代码块中的代码,要么都执⾏要么 都不执⾏
代码块以缩进开始,直到代码恢复到之前的缩进级别时结束
代码块就是⼀种为代码分组的机制
num = 30
if num > 20 and num < 40 :
    print('num比20大,num比40小')
    
返回结果:'num比20大,num比40小'

三、input 函数

该函数⽤来获取⽤户的输⼊
会接受一个标准的输入的数据,返回的类型string类型,
input()调用这个函数之后,程序会立即暂停,等待用户输入

语法:input()
gz = int(input('请输入您的工资:'))
#让用户输入工资,用gz接收;
#用户输入的内容默认是str字符串格式,把字符串转为整型
if gz >= 2000:
#条件:gz大于等于2000就执行代码块
    print('再接再厉')
    #if的代码块
else:
#当if条件不满足,则执行else的代码块
    print('哎,可怜挣得真少')
    #else的代码块

四、if-else 语句

执⾏流程:
if-else语句在执⾏时,先对if后的条件表达式进⾏求值判断
如果为True,则执⾏if后的代码块
如果为False,则执⾏else后的代码块)

语法:
if 条件表达式:
	代码块
else:
	代码块
CK=20000
if CK >= 15000:
#条件:CK大于等于15000就执行代码块
    print('再接再厉!')
    #if的代码块
else:
#当if条件不满足,则执行else的代码块
    print('继续努力!')
    #else的代码块

五、if-elif-else 语句

执⾏流程: if-elif-else语句在执⾏时,会⾃上向下依次对条件表达式进⾏求值判断,
如果表达式的结果为True,则执⾏当前代码块,然后语句结束 如果表达式的结果为False,则继续向下判断,直到找到True为⽌
如果所有的表达式都是False,则执⾏else后的代码块

语法:
if 条件表达式:
	代码块
elif 条件表达式:
	代码块
elif 条件表达式:
	代码块	
else:
	代码块
练习1:
value = 30000
#设定一个值
if value >= 30000:
#条件:判断value是否大于等于30000,结果为True则执行代码块,否则往下判断;
    print('有钱任性')
elif value >= 20000: 
#条件:判断value是否大于等于20000,结果为True则执行代码块,否则往下判断;
    print('有钱真好')
elif value >= 10000: 
#条件:判断value是否大于等于10000,结果为True则执行代码块,否则往下判断;
    print('哥也⽉薪上万了')
elif value >= 5000:
#条件:判断value是否大于等于5000,结果为True则执行代码块,否则往下判断;
    print('⼯资还说的过去')
elif value >= 2000: 
#条件:判断value是否大于等于2000,结果为True则执行代码块,否则往下判断;
    print('能养活⾃⼰了')
else:
#当上述所有条件皆不满足时,则运行else的代码块。
    print('你该努力了')
练习2#3月、4月、5月为春季,6月、7月、8月为夏季,
#9月、10月、11月为秋季,12月、1月、2月为冬季。
#根据用户输入的月份打印对应的信息!

yue = int(input('输入月份'))
#收取用户输入的月份
if yue > 12 or yue < 1:
#条件判断用户输入的月份是否在正常范围内;
    print(yue,'月份不存在')
elif 3 <= yue <=5:
#条件判断用户输入的是不是春季
    print(yue,'月份  春季')
elif 6 <= yue <=8:
#条件判断用户输入的是不是夏季
    print(yue,'月份  夏季')
elif 9 <= yue <=11:
#条件判断用户输入的是不是秋季
    print(yue,'月份  秋季')
else:
#上不满足春季、夏季、秋季、则输出冬季
    print(yue,'月份  冬季')

总结: if-elif-else中只会有⼀个代码块会执⾏

六、while 语句

循环语句可以使指定的代码块重复指定的次数;
循环语句分成两种:
while循环 和 for循环
执行流程:
while语句在执行时,会先会while语句后面的条件表达式进行求值判断
如果判断结果为True,则执行循环体的逻辑(代码块)
循环体执行完毕之后,继续对条件表达式进行求值判断,以此类推
直到判断结果为False,则终止循环,或执行else语句中的逻辑。

语法: 
while 条件表达式 : 
	代码块 
else:代码块

while循环的三要素:
初始化表达式:通过初始化表达式来初始化一个变量
条件表达式:同来设置循环的执行条件
更新条件表达式:修改初始化变量的值

总结:初始化变量是0,小于几就执行几次

while的三要素:
i=0  
#初始化表达式
while i<20:
#条件表达式
    i += 1
   # 更新条件表达式
    print(i)

七、循环嵌套

Python 语⾔允许在⼀个循环体⾥⾯嵌⼊另⼀个循环。

语法:
while 条件表达式:
	while 条件表达式:
		代码块
	代码块
练习199乘法表
i = 0
#设定一个值给i
while i < 9: 
#条件判断I是否小于9,为True就执行代码块,否则结束
    i += 1
	#防止while死循环
    j = 0
    #设定一个值给j
    while j < i :
    #条件判断j是否小于i
        j += 1
        #防止死循环
        print(f'{j}*{i}={j*i}',end='')
        #输出99乘法表
    print()

八、break和continue

continue:跳过本次循环
⽤来跳过当初循环

i = 0
while i < 6:
    i += 1
    if i==3:
        continue
    print(i)
else:
    print('程序结束')
返回结果:#跳过了3的输出
1
2
4
5
6
程序结束

break:停止循环
可以⽤来⽴即退出循环语句,包括else语句

i = 0
while i < 6:
    i += 1
    if i==3:
        break
    print(i)
else:
    print('程序结束')
返回结果:#在输出完2以后循环就停止了
1
2

课堂作业:

作业1:获取⽤户输⼊的任意数,判断其是否是质数?

#作业1:
#获取⽤户输⼊的任意数,判断其是否是质数?
sz=int(input("请输入一个数字:"))
#用户输入一个数字,将数字转为整数类型;
if sz>=1:
#判断数字是否为正数
    if sz % 2 == 1 :
    #判断数字除2是否等于1,相等就执行代码了,否则执行else代码块
        print('质数')
    else:
        print('不是质数')
else:
    print('输入有误!')

#答案1:
num = int(input('请输入一个数字:'))
i = 2
# 定义一个变量,变量来记录num是否是质数,默认num是质数 True
flag = True
while i < num :

    #如果num能被i整除,则说明num一定不是质数
    if num % i == 0:
        # 一旦进入判断则证明num一定不是质数,需要将flag修改为False
        flag = False
    i += 1

if flag:
    print(num,'是质数')
else:
    print(num,'不是质数')

作业2:求1000以内所有的⽔仙花数

#作业2:
#求1000以内所有的⽔仙花数
sz = 1
a = 1
b = 0
c = 0
d = 0
while sz <= 1000:
    sz += 1
    a += 1
    print(sz)
    if a == 10:
        a = 0
        b +=1
    elif b == 10:
        b = 0
        c += 1
    elif c == 10:
        c = 0
        d += 1
    elif sz >= 1000:
        break
    elif sz == (d ** 3) + (c ** 3) + (b ** 3) + (a ** 3):
        print(f'{d}{c}{b}{a}是水仙花数')
    else:
        pass

#答案1:
i = 100

while i < 1000:

    a = i // 100    #百位数
    #b = i // 10 % 10
    b = (i - a * 100) // 10  #十位数
    c = i % 10 #个位数
    if i == (a ** 3) + (b ** 3) + (c ** 3):
        print(i,'为水仙花数')
    i += 1

本文地址:https://blog.csdn.net/q19348/article/details/107672104