400-650-7353
您所在的位置:首页 > IT干货资料 > python > 【Python基础知识】Python中的for循环语句

【Python基础知识】Python中的for循环语句

  • 发布: python培训
  • 来源:
  • 2021-07-26 14:40:28
  • 阅读()
  • 分享
  • 手机端入口

1、for循环语句

Python中除了while循环外,还有for循环。for循环用来迭代Python中序列(sequence)的元素,或其他可迭代对象(iterable)。在Python中,序列是一种有序的集合类型,如字符串和下一章将介绍的列表和元组。有一些通用的操作可以在每一种序列上使用,迭代就是其中之一。

for循环的语法格式如下:

for 迭代变量 in 可迭代对象:

循环体

使用for循环迭代打印字符串中的字符:

>>> for c in 'Python':

... print(c)

...

P

y

t

h

o

n

第一行代码先获取字符串'Python'的第一字符'P',再将其存储在变量c中,接着Python读取下一行代码。在第二行代码中,此时c的值为'P',print(c)将它打印出来。接下来这个循环会迭代(即重复)这个过程,c会依次被赋值为'y'、't'……直到这个字符串结束。

准确地说,Python中没有“字符”这个概念,一个单独的'P'也是字符串类型,上文称为字符是为了与字符串区分。

还可以将迭代出字符串和其他字符串拼接起来:

>>> vowel = 'AEIOU'

>>> for c in vowel:

... print(c, '是一个元音字母')

...

A 是一个元音字母

E 是一个元音字母

I 是一个元音字母

O 是一个元音字母

U 是一个元音字母

【Python基础知识】Python中的for循环语句

实际上,甚至可以不使用迭代出的字符串,而仅仅利用字符串的长度属性(如'Python'的长度是6),来重复做一些事。例如,打印6次“我爱Python”:

>>> for c in 'Python':

... print('我爱Python')

...

我爱Python

我爱Python

我爱Python

我爱Python

我爱Python

我爱Python

即使可以利用字符串的长度属性打印6次“我爱Python”,但却不提倡这种做法。迭代字符串,而不利用迭代出的字符,会造成计算机资源的浪费。

2、使用range()函数

由于重复地执行同一段代码是个很常见的任务,因此,Python内建了一个函数range()来使这个任务实现得更容易。使用range()函数来完成上面打印6次的任务:

>>> for i in range(6):

... print('我爱Python')

...

我爱Python

我爱Python

我爱Python

我爱Python

我爱Python

我爱Python

迭代range()函数和迭代字符串类似,每次都会获取range()函数产生的一个值,然后将它存储在变量i中。将上例的i打印出来:

>>> for i in range(6):

... print(i)

...

0

1

2

3

4

5

可能与预期的结果不同,打印出来的数字是0~5,而不是1~6。这是由于编程语言往往都是从0开始。

使用range()函数也可以完成打印1到100的任务,给range()函数传递两个参数,第一个参数为起始值,第二个参数为结束值:

>>> for i in range(1, 101):

... print(i)

...

1

2

3

4

……

98

99

100

由此可见,这种方式打印1到100,比使用while循环程序更加简洁。while循环往往需要初始化一个变量,还要在循环体中改变这个变量的值;而for循环往往只要指定次数或者指定初始值和结束值即可。

在上述程序中,range()函数的结束值不是100,而是101,而打印到100结束了。这是由于range()函数总是包含起始值而不包含结束值。

range()函数还可以在起始值和结束值的基础上,加入第三个参数——步长。步长就是指定获取数字的间隔。例如,打印1~10中的奇数和它们各自的平方:

>>> for i in range(1, 11, 2):

... print(i, '的平方是', i**2)

...

1 的平方是 1

3 的平方是 9

5 的平方是 25

7 的平方是 49

9 的平方是 81

文章“【Python基础知识】Python中的for循环语句”已帮助

更多内容

>>本文地址:https://www.ujiuye.com/zhuanye/2021/69429.html

THE END  

声明:本站稿件版权均属中公教育优就业所有,未经许可不得擅自转载。

1 您的年龄

2 您的学历

3 您更想做哪个方向的工作?

获取测试结果
  • 大前端大前端
  • 大数据大数据
  • 互联网营销互联网营销
  • JavaJava
  • Linux云计算Linux
  • Python+人工智能Python
  • 嵌入式物联网嵌入式
  • 全域电商运营全域电商运营
  • 软件测试软件测试
  • 室内设计室内设计
  • 平面设计平面设计
  • 电商设计电商设计
  • 网页设计网页设计
  • 全链路UI/UE设计UI设计
  • VR/AR游戏开发VR/AR
  • 网络安全网络安全
  • 新媒体与短视频运营新媒体
  • 直播带货直播带货
  • 智能机器人软件开发智能机器人
 

快速通道fast track

近期开班时间TIME