循环python笔记

Python是一门非常强大的编程语言,尤其在循环方面有着很好的表现。循环是编程语言中最重要的一个概念,可以帮助我们写出高效、可复用的代码。

循环分为两种:for循环和while循环。for循环用于迭代一定次数,而while循环用于重复某段代码,直到满足某个条件而停止。下面我们分别来看一下这两种循环的用法和相关知识。

1. for循环

for循环通常被用于对一组数据进行迭代,例如字符串、列表、元组等。其语法格式如下:

```python

for 变量 in 可迭代对象:

循环体语句

```

其中,变量表示每次循环所取到的值,可迭代对象可以是字符串、列表、元组等,循环体语句是需要重复执行的代码段。例如,我们可以使用for循环输出一个列表的所有元素:

```python

list = [1, 2, 3, 4, 5]

for i in list:

print(i)

```

这会依次输出1、2、3、4、5。

在for循环中,我们经常需要用到range()函数。它可以产生一个由整数组成的序列,方便我们使用for循环进行迭代,其语法格式如下:

```python

range(start, stop[, step])

```

其中start和stop是必选的参数,表示序列的起始值和结束值。step是可选的参数,表示每次迭代的步长,默认为1。例如,我们可以使用range()函数输出1~10之间的所有整数:

```python

for i in range(1, 11):

print(i)

```

这会输出1、2、3、4、5、6、7、8、9、10。

除了普通的for循环,Python还支持列表推导式。它是一种简洁的方式来创建列表,其语法格式如下:

```python

[expression for item in iterable]

```

其中,expression是一个表达式,item是迭代的对象,iterable是列表、元组、字符串等可迭代对象。例如,我们可以使用列表推导式创建一个列表,其中包含1~10之间的所有偶数:

```python

list = [i for i in range(1, 11) if i % 2 == 0]

print(list)

```

这会输出[2, 4, 6, 8, 10]。

2. while循环

while循环用于重复某段代码,直到满足某个条件而停止。其语法格式如下:

```python

while 条件:

循环体语句

```

其中,条件是一个表达式,循环体语句是需要重复执行的代码段。例如,我们可以使用while循环计算1~100之间的整数和:

```python

sum = 0

i = 1

while i <= 100:

sum += i

i += 1

print(sum)

```

这会输出5050。

在使用while循环时,需要注意避免死循环。如果条件永远为真,循环将一直执行下去,导致程序停止响应。例如,以下代码会导致死循环:

```python

while True:

print("死循环")

```

为了避免死循环,我们通常需要在循环体中修改条件表达式,或者使用break语句跳出循环。

3. 常见误区

在使用循环时,常常会出现一些常见的误区。例如,以下代码会引发IndexError异常:

```python

list = [1, 2, 3, 4, 5]

for i in range(len(list)):

print(list[i+1])

```

这是因为i的最大值为4,当i=4时,list[i+1]已经超出了列表的范围。为了避免这种情况,我们可以在循环时直接遍历列表元素,而不是使用索引。

另一个常见的误区是,在循环体内修改迭代对象。例如,以下代码会导致循环跳过一些元素:

```python

list = [1, 2, 3, 4, 5]

for i in list:

if i % 2 == 0:

list.remove(i)

print(list)

```

这是因为在循环中修改了列表元素,导致迭代器指向的元素位置发生改变,从而跳过了一些元素。为了避免这种情况,我们可以使用一个临时列表来存储需要删除的元素,在循环完成后再删除它们。

4. 总结

循环是Python编程中的非常重要的概念,在Python中有for循环和while循环两种形式。在使用循环时需要注意一些常见的误区,比如避免死循环和遍历时不要修改迭代对象。对于循环的掌握,不仅可以帮助我们写出高效、可复用的代码,还可以提高我们的编程能力和代码品质。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.ynyuzhu.com/

点赞(114) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部