首页 技术 正文
技术 2022年11月15日
0 收藏 316 点赞 3,573 浏览 2411 个字

for循环是python中的一个通用的序列迭代器,可以遍历序列对象中的所有对象。1、for循环基本格式for循环基本格式如下。

for var in object:
循环体语句块
else:
语句块

   4     1

for var in object:

2

    循环体语句块

3

else:

4

    语句块

  else部分可以省略。for执行时,依次将可迭代对象object中的值赋给变量var。var每赋值一次,则执行一次循环体语句块。循环执行结束后时,如果有else部分,则执行对应的语句块。else部分只在正产结束循环时执行。如果用break跳出循环,则不会执行else部分。例如;

for x in (1,2,3,(4,5)):
print(x)1
2
3
(4,5)for x in "book":
print(x)b
o
o
kfor x in (1,2,3):
print(x*2)
else:
print("loop over")2
4
5
loop over

   25     1

for x in (1,2,3,(4,5)):

2

    print(x)

3


4

1

5

2

6

3

7

(4,5)

8


9

for x in "book":

10

    print(x)

11


12

b

13

o

14

o

15

k

16


17

for x in (1,2,3):

18

    print(x*2)

19

else:

20

    print("loop over")

21

    

22

2

23

4

24

5

25

loop over

  在迭代字典对象时,变量一次迭代字典的各个键。例如:

d={'name':'john','age':25}
for x in d:
print(x,d[x])age 25
name john

   6   1

d={'name':'john','age':25}

2

for x in d:

3

    print(x,d[x])

4

    

  5

age 25

6

name john

  可以使用range() 函数来生成包含连续多整数的range对象,其基本格式如下:

range(end)
range(start,end[,step])

])  

x

   1

range(end)

2

range(start,end[,step])

  指定end参数时,生成整数范围为0~end-1.指定start时,生成整数范围为start~end-1,间隔为step。step默认为1。例如:

for x in range(3):
print(x)
0
1
2for x in range(-2,2):
print(x)
-2
-1
0
1for x in range(-2,2,2):
print(x)
-2
0

):  

x

   1

for x in range(3):

2

    print(x)

3

0

4

1

5

2

6


7

for x in range(-2,2):

8

    print(x)

9

-2

10

-1

11

0

12

1

13


14

for x in range(-2,2,2):

15

    print(x)

16

 -2

17

0

   2、多个变量迭代可在for循环中用多个变量来迭代序列对象。例如:

for (a,b) in ((1,2),(3,4),(5,6)):
print(a,b)
1 2
3 4
5 6

   1   1

for (a,b) in ((1,2),(3,4),(5,6)):

2

    print(a,b)

3

1 2

4

3 4

  5

5 6

  与赋值语句类似,可以用”*” 给变量赋值给一个列表。例如:

for(a,*b) in ((1,2,'abc'),(3,4,5)):
print(a,b)
1[2,'abc']
3[4,5]

,  1   1

for(a,*b) in ((1,2,'abc'),(3,4,5)):

2

    print(a,b)

3

1[2,'abc']

  4

3[4,5]

   3、break和continuebreak语句用于跳出当前循环,即提前结束循环(包括跳过else)。Continue语句则用于跳过循环体剩余语句,回到循环开头开始下一次迭代。        例如,下面的代码用for循环找出100~999范围内的前10个回文数字—3位数中个位和百位相同的数字为回文数字。

a=[]
n=()
for x in range(100,999):
s=str(x)
if s[0]!=s[-1]:
continue
a.append(x)
n+=1
if n==10:
break
else:
print('loop over')
print(a)

a=[]  

x

   1

a=[]

2

n=()

3

for x in range(100,999):

4

    s=str(x)

5

    if s[0]!=s[-1]:

6

        continue

7

    a.append(x)

8

    n+=1

9

    if n==10:

10

        break

11

else:

12

    print('loop over')

13

print(a)

   4、嵌套使用for循环python允许嵌套使用for循环,即在for循环内部使用for循环。例如,下面的代码输出100以内的素数(素数指除了1和他本身之外不能被其他数整除的数)。

print(2,3,end=" ")         #2、3是素数,直接输出,end=" " 使后续输出不换行。
for x in range(4,100):
for n in range(2,x):
if x%n==0:
break
else:
print(x,end=" ")
else:
print("over")

使后续输出不换行。  1     1

print(2,3,end=" ")         #2、3是素数,直接输出,end=" " 使后续输出不换行。

2

for x in range(4,100):

3

    for n in range(2,x):

4

        if x%n==0:

5

            break

6

    else:

7

        print(x,end=" ")

8

else:

9

    print("over")

              

<wiz_tmp_tag id=”wiz-table-range-border” contenteditable=”false” style=”display: none;”>

    来自为知笔记(Wiz)

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,491
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,493
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,132
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,294