兄弟连学python(1)——循环结构
循环结构可以减少源程序重复书写的工作量(代码量),用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构。
Python中循环结构分为两类,分别是 while 和 for .. in
''' while 循环
格式1:
num1,num2 = 3,5
while num1 < num2:
print('如果条件成立,会进入循环体,我所处的这块区域,就是循环体')
num1 += 1 #控制循环条件中的变量,否则进入死循环
死循环: 死循环就是循环不会终止的循环类型,设置条件永远为True来实现,但非常占用资源
格式2:
num1,num2 = 3,5
while num1 < num2:
print('如果条件成立,会进入循环体')
num1 += 1
else:
print('条件不成立时,我会被输出')
注意: while循环中的else是在while条件表达式为假的情况下执行的代码内容
'''#一行十个星星'''i = 0while i < 10: print('*',end = '')#当前行结束添加一个空白符 i += 1'''#十行十列的星星j = 0while j < 10: i = 0 while i < 10: print('*', end='') i += 1 print('\n',end = '')#当前行结束添加一个换行符 然后添加一个空白符 j += 1#制作一个十行十列的隔行变色星星'''j = 0while j < 10: if j % 2 == 0: i = 0 while i < 10: print('★',end = '') i += 1 print('\n',end = '') else : i = 0 while i<10: print('☆',end = '') i += 1 print('\n',end = '') j += 1 ''''''#生成10行j = 0while j < 10: #生成1行10个小星星 i = 0 while i < 10: #判断奇数偶数行 if j % 2 == 1:#奇数行 print('☆',end = '') else:#偶数行 print('★',end = '') i += 1 #输出换行符 print('\n', end = '') #j自增 j += 1#十行十列隔列变色j = 0while j < 10: i = 0 while i < 10: if i % 2 == 0:#判断列的奇数偶数 print('★',end = '') else : print('☆', end = '') i += 1 print('\n',end = '')#换行 末尾添加空字符 j += 1'''#隔列变色j = 0while j < 10: i = 0 while i < 10: if i % 2 == 0: print('★',end = '') else: print('☆', end = '') i += 1 print('\n',end = '') j += 1#1个while 循环生成10行10列的星星j = 0while j < 100: print('*',end = '') if j % 10 == 9: print('\n',end = '') j += 1# 十行十列隔行变色i = 0while i < 100: if i // 10 % 2 == 0: print('*',end = '') else: print('$',end = '') if i % 10 == 9: print('\n',end = '') i += 1#十行十列隔列变色i = 0while i < 100: if i % 10 % 2 == 0: print('*',end = '') else : print('$',end = '') if i % 10 == 9: print('\n',end = '') i += 1#while循环带有else的格式#else是在条件表达式结果为假(循环终止)的时候执行i = 0while i < 3: print(i) i += 1else: print('while 循环结束时我才执行')for ... in
for 变量 in 容器:用于遍历容器类的数据(字符串,列表,元组,字典,集合)
'''am = ['小猪','小样','小马','小河']for i in am: print(i)i = 0while i < len(am): print(an[i]) i += 1'''#字典am = {'1':'xiaozhu','2':'xiaoyang','3':'xiaoma','4':'xiaohe'}for key in am: print(key)#遍历键值for val in am.values(): print(val)#遍历键for key in am.keys(): print(key)#遍历键和键值for key,val in am.items(): print(key,val)#二级容器#等长二级容器ab = [['xiao','bai','tu'],['da','hui','lang'],['guang','tou','qiang']]'''for name in ab: print(name)for a,b,c in ab: print(a,b,c)for i in ab: for j in i: print(j)'''#不等长容器at= [['xiao','bai',],['da','hui','lang'],['guang','tou','qiang','tu']]for i in at: for j in i: print(j)#其他流程语句'''breakcontinuepass'''#breaka = 0while a < 10: if a==9: break else: print(a) a += 1#continue'''i = 0while i < 100: if i % 10 == 4 and i // 40 == 1: i += 1 continue else: print(i) i += 1''''''猜价小游戏:input用于接收用户的输入内容prince = input('请输入价格:’)print(price,type(price))''''''price = 355i = 0while i < 10: usprice = input('请输入价格:') inprice = float(usprice) if inprice == price: print('congratulation,答对了') elif inprice < price: print('价格太低了,你还有',9-i,'次机会') else: print('价格太高了,你还有',9-i,'次机会') i += 1else: print('你是猪吗,十次都答不对')'''#输出0-100的所有数字,带4的不要i= 0while i <=100: if '4' in str(i): i += 1 continue else: print(i) i += 1#passif False: passelse: print('pass是占位用的')
Python学习交流、资源共享群:563626388 QQ