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

学习疑问申请解答
您的姓名
您的电话
意向课程
 

中公优就业

IT小助手

扫描上方二维码添加好友,请备注:599,享学习福利。

>>本文地址:
注:本站稿件未经许可不得转载,转载请保留出处及源文件地址。

推荐阅读

优就业:ujiuye

关注中公优就业官方微信

  • 关注微信回复关键词“大礼包”,享学习福利
QQ交流群
在线疑问解答
(加群备注“网站”)
IT培训交流群 加入群聊 +
软件测试 加入群聊 +
全链路UI/UE设计 加入群聊 +
Python+人工智能 加入群聊 +
互联网营销 加入群聊 +
Java开发 加入群聊 +
PHP开发 加入群聊 +
VR/AR游戏开发 加入群聊 +
大前端 加入群聊 +
大数据 加入群聊 +
Linux云计算 加入群聊 +
优就业官方微信
扫码回复关键词“大礼包”
享学习福利

测一测
你适合学哪门IT技术?

1 您的年龄

2 您的学历

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

获取测试结果
 
课程资料、活动优惠 领取通道