加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python基础--循环for和while

发布时间:2020-12-20 10:26:49 所属栏目:Python 来源:网络整理
导读:for循环遍历 for i in xxx: ? ? 代码块 i:是一个变量,是把xxx里面的某一个值取出来存到i里面 xxx:可以是序列(序列包括:列表、元祖、字符串),还可以是迭代对象 for i in " abc " :... print (i)...abc #调试技巧 例题:求列表[1,2,3,4]的和 打印出每一步

for循环遍历

for i in xxx:

? ? 代码块

i:是一个变量,是把xxx里面的某一个值取出来存到i里面

xxx:可以是序列(序列包括:列表、元祖、字符串),还可以是迭代对象

>>> for i in "abc":
...     print(i)
...
a
b
c

#调试技巧 例题:求列表[1,2,3,4]的和 打印出每一步的结果

>>> result =0
>>> for i in [1,4]:
...???? print("i的取值",i)
...???? result+=i
...???? print("计算结果",result)
...
i的取值 1
计算结果 1
i的取值 2
计算结果 3
i的取值 3
计算结果 6
i的取值 4
计算结果 10
>>> print(result)
10

?

#通过索引循环遍历

>>> fruits = [‘banana‘,‘apple‘,‘mango‘]
>>> for index in range(len(fruits)):
...???? print(fruits[index])
...
banana
apple
mango
>>>

以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

?

?

while循环遍历

while True:

? ? 代码块

True:条件,只要条件是True 代码块会永远执行

死循环应用场景:

? ? 1 服务器端:一般死循环

? ? 2 你也不知道循环多少次的时候就要用到死循环

>>> a = 0
>>> while a<=5:
...     print(a)
...     a+=1   #相当于a=a+1
...
0
1
2
3
4
5


#练习题:

用死循环实现:

  用户输入数字,判断是奇数还是偶数

  当输入的数字是100的时候,结束第循环

>>> while 1:
...???? user_num =int(input("请输入一个数字:"))
...???? if user_num%2==0:
...???????? print("%s 是偶数" %user_num)? ?#模板字符串
...???? else:
...???????? print("%s 是奇数" %user_num)
...???? if user_num==100:
...???????? break
...
请输入一个数字:2
2 是偶数
请输入一个数字:3
3 是奇数
请输入一个数字:4
4 是偶数
请输入一个数字:5
5 是奇数
请输入一个数字:6
6 是偶数
请输入一个数字:100
100 是偶数
>>>

?

?

break和continue

break:彻底结束循环
continue:跳出本次循环,执行下一次

对比示例:

>>> for i in range(10):
...     if i==3:
...         break   #整个for循环结束,>=3的数字不在打印
...     print(i)
...
0
1
2
>>> for i in range(10):
...     if i==3:
...         continue   #跳过i==3这次循环不打印,for循环继续后面的循环
...     print(i)
...
0
1
2
4
5
6
7
8
9
>>>

?

?

for/while...else...搭配的诡异用法:

#没有break
>>> for i in range(5): ... if i == 3: ... continue ... print(i) ... else: #else语句被执行 ... print("no break") ... 0 1 2 4 no break

#有break

>>> for i in range(5):
...? ? ?if i == 3:
...? ? ? ? ?break
...? ? ?print(i)
... else:? ?#else没有被执行
...? ? ?print("no break")
...
0
1
2
>>>

总结:只要循环体内部没有执行break就会执行else部分的代码

?

?

例:

题目:[1,2,3,4,5,7]你输入一个数字,判断一下是否在这个list中,执行3次这个逻辑。

算法:

1、循环3次 (forfor i in range(3)

2、输入一个数字(input),存到某个变量里

user_num =int(input("请输入一个数字:"))

3、判断这个数字在不在[1,2,3,4,5,7]

desc_list =[1,4,5,7]

4、如果在,打印一下;不再也打印一下。

if user_num in desc_list:

  print("%s 在" %user_num)

else:

  print("%s 不在" %user_num ) 

实现:

>>> desc_list =[1,7]
>>> for i in range(3):
...     user_num =int(input("请输入一个数字:"))
...     if user_num in desc_list:
...         print("%s 在" %user_num)#模板字符串表达方式 "%s a number" %1   ‘1 a number‘
...     else:
...         print("%s 不在" %user_num)
...
请输入一个数字:5
5 在
请输入一个数字:2
2 在
请输入一个数字:1
1>>>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读