Python基础:迭代整数序列不能只知道range,原来还有这2种!

liftword4个月前 (02-14)技术文章30

作为Python基础,迭代过程使用整数序列的频率那不是一般的高啊,新手接触for循环,range函数永远不会缺席。今天,钢铁老豆就给大家介绍一下range函数和它类似的API小伙伴们~ 学完这篇文章,整数序列不要再只会用range啦!

1.`range`函数

`range`是Python中的内置函数,用于生成一个整数序列。`range`函数最常用于for循环中,帮助执行重复操作。

1.1 基本用法

`range`可以有一到三个参数:`range(stop)`、`range(start, stop)`、`range(start, stop, step)`。这里的`start`是序列开始的数字(默认为0),`stop`是序列结束的数字(不包括该数字),而`step`是两个数之间的间隔(默认为1)。

# 从0到9
for i in range(10):
    print(i)

# 从1到10
for i in range(1, 11):
    print(i)

# 从0到10,步长为2
for i in range(0, 11, 2):
    print(i)

1.2 结合列表推导式

# 使用range生成0到9的平方
squares = [x**2 for x in range(10)]
print(squares)

1.3 结合`enumerate`和`zip`

# 使用enumerate获取索引和值
fruits = ['apple', 'banana', 'cherry']
for index, fruit in enumerate(fruits):
    print(index, fruit)

# 使用zip和range同时迭代两个列表
names = ['Alice', 'Bob', 'Charlie']
ages = [25, 30, 35]
for name, age in zip(names, range(25, 40, 5)):
    print(f'{name} is {age} years old')

2.`numpy.arange`

如果你在处理大量的数据,`numpy.arange`可以生成大型数字数组,这对于数据分析和科学计算特别有用。

import numpy as np
# 生成0到1之间的10个浮点数
numbers = np.arange(0, 1, 0.1)
print(numbers)

3.`itertools.count`

当你需要一个无限的迭代器时,`itertools.count`可以从一个起点开始不断生成数字。

from itertools import count
# 从100开始无限计数
for i in count(100):
    print(i)
    if i > 110:
        break

所以,这3种生成整数序列的方法,你都get到了吗?掌握`range`及其类似的API能够帮助你更高效地编写Python代码,处理各种数据操作任务。

欢迎点赞+收藏+评论+关注,每天学习一点Python小知识,无论基础、模块、数据分析、深度学习和Ai,总有你感兴趣的。我是钢铁老豆,一个30岁转行IT、自学成为算法工程师、想用Ai点亮孩子小小世界的Pythoner。

相关文章

Python如何判断一个数是不是整数?答案没那么简单

在Python里,如果我们想判断一个数是不是整数,应该如何操作呢?使用type方法很多人首先想到的是使用type方法,例如:x = 0 type(x) == int这个方法看上去很简单,但在Pytho...

Python ‘bufferobject.c’整数溢出漏洞

受影响系统:Python python不受影响系统:Python python ˂ 2.7.8描述:BUGTRAQ ID: 70089Python是一种面向对象、直译式计算机程序设计语言。Python...

编程脑洞:如何用一个整数来表示一个列表?

原题 | Storing a list in an int (https://iantayler.com/2020/12/07/storing-a-list-in-an-int)作者 | Comput...

「Python条件结构」判断是否能同时被3、5、7整除

功能要求编写一个控制台应用重新,从键盘中输入一个正整数N,判断它是否能同时被3、5、7整除,并输入以下信息之一:如果能同时被3、5、7整除,则显示“能同时被3、5、7整除”;如果能被其中两个数整数,则...

第1章 整数运算-扩建花圃问题_扩建花园

python500题:扩建花圃问题。猎风老师的习题课。下面看一下扩建花圃的问题。梅山小学有一块长方形的花圃,花圃的长和宽都是整数,长是m米,宽未知。在修建校园的时候把花圃的长增加了n米,此时发现增加出...