今天出错的是代码返回1,并无报错:因为在range条件句里写了,多加了迭代;还有定义变量涉及关键字 肝毕设,苍蝇快走开 #循环结构 #循环体里的语句至少应该包括改变条件表达式的语句,为了让循环趋于结束,否则就会变成一个死循环 #while循环 num=0 while num<=10: print(num) num+=1 #python里没有类似num++的自增 #要是嫌打印换行占地方,可以改成如下 num=0 while num<=100: print(num,end="\t") num+=1 print("*************************88*") #计算1-100之间数字的累加和 num2=0 sum_all=0 #先存储上 while num2<=100: sum_all=sum_all+num2 num2+=1 #如果没有这句,就会陷入死循环,因为num2一直等于0 print("1-100所有数叠加和:",sum_all) #这句打印和while是并列的缩进,是循环结束后执行 #for循环和可迭代对象遍历 #for 变量 in 可迭代对象 # 循环体语句 #遍历一个元组或列表 for x in (20,30,40): #元组 print(x*3) for y in "abcdefg": #字符串 print(y) #遍历字典 d={"name":"wangjiaqi","age":24,"address":"东海龙宫001号楼"} for x in d: #遍历字典所有的key print(x) for x in d.keys(): #遍历字典所有的key print(x) for x in d.values(): #遍历字典所有的value print(x) for x in d.items(): #遍历字典中所有的键值对 print(x) #range对象是一个迭代器对象,用来产生指定范围的数字序列 # for i in range(10) #产生的是0-9的123456789,没有产生到10 # for i in range(3,10) #产生序列:3456789,注意没到10 # for i in range(3,10,2) #产生序列3 5 7 9 #利用for循环,计算1-100之间数字的累加和;计算1-100之间偶数的累加和;计算1-100之间奇数的累加和 sum_all=0 #1-100所有数的累加和 sum_even=0 #1-100偶数的累加和 sum_odd=0 #1-100奇数的累加和 for x in range(101): #写100不行,100会算到99,写101才会算到101 sum_all+=x if x%2==0:sum_even+=x else:sum_odd+=x print("1-100所有数的累加和",sum_all) print("1-100偶数的累加和",sum_even) print("1-100奇数的累加和",sum_odd) print("1-100累加总和{0},奇数和{1},偶数和{2}".format(sum_all,sum_odd,sum_even)) #嵌套循环 #经典联系 for x in range(5): for y in range(5): print(x,end="\t") print() #天然换行 #x等于0,进来y等于0的循环,打印x,再打印一个制表符; #注意:y=0之后执行y=1;近来内层循环就要先把内层循环执行完 #内层y循环完成后,执行和y循环并列的下一句换行 #换行之后,再回到外层循环 #打印九九乘法表,分析两个循环遍历m的值,一个是n的值 for m in range(1,10): #1-9 for n in range(1,m+1): #不是m+1的话会打出一个正方形表阵 print("{0}*{1}={2}".format(m,n,m*n),end="\t") print() #用列表和字典储存下表信息,并打印出表中工资高于15000的数据 r1=dict(name="王大大",age=24,salary=30000,city="北京") r2=dict(name="王二二",age=25,salary=10000,city="深圳") r3=dict(name="王三三",age=26,salary=20000,city="上海") tb=[r1,r2,r3] #定义表格 for x in tb: if x.get("salary")>15000: print(x) #--------------------------------------------------- #break语句用于while和for循环,用于结束整个循环, # 当有循环嵌套时,能跳出最近一层的循环 while True: #while true是个死循环,像linux系统里监听鼠标监听键盘 a=input("请输入一个字符(输入Q或q结束)") if a.upper()=="Q": print("循环结束,退出") break #跳出整个 else: print(a) #continue #用于本次循环,继续下一次。多个循环嵌套时,continue就近作用循环 #要求输入员工的薪资,若薪资小于0则重新输入,最后打印出录入员工数量和薪资明细以及平均工资 empNum=0 salarySum=0 salarys=[] while True: s=input("请输入员工的薪资(按Q或q结束)") if s.upper()=="Q": print("录入完成,退出") break if float(s)<0: continue empNum+=1 salarys.append(float(s)) salarySum+=float(s) print("员工数{0}".format(empNum)) print("录入薪资:",salarys) print("平均薪资{0}".format(salarySum/empNum)) #else语句 # (python独有)while、for循环可以附带一个else语句(可选)。如果for、while语句没有被break语句结束 #则会执行else子句,否则不执行(说特么 说的啥啊,要听不下去了),语法格式如下: #员工一共4人,录入这4位员工的薪资。全部录入后,打印提示“您已经全部录入4名员工的薪资”最后打印出录入的薪资和平均薪资 salarySum=0 salarys=[] for i in range(4): s=input("请输入员工薪资(按Q或q中途结束)") if s.upper()=="Q": print("录入完成,退出") break if float(s)<0: continue salarys.append(float(s)) salarySum+=float(s) else: #循环被中断的情况下,else语句不执行;循环正常结束else执行 print("您已经全部录入了4名员工的薪资") print("录入薪资:",salarySum) print("平均薪资{0}".format(salarySum/4))
python循环结构
最新推荐文章于 2024-08-20 16:20:53 发布