Rumah >pembangunan bahagian belakang >Tutorial Python >Python如何创建指定范围的数字列表?(代码示例)

Python如何创建指定范围的数字列表?(代码示例)

青灯夜游
青灯夜游asal
2019-03-20 15:50:0013613semak imbas

在Python中,给定两个数字r1和r2(定义范围,最大值和最小值),如何创建具有给定范围的数字列表?下面本篇文章就来带大家了解一下创建指定范围数字列表的方法,希望对大家有所帮助。

Python如何创建指定范围的数字列表?(代码示例)

方法一:使用for循环

在给定范围内创建数字列表的一种简单方法是:首先创建一个空列表,并在for循环的每次迭代中附加每个整数的后续项。

示例:

def createList(r1, r2): 
  
    # 判断范围R1和R2是否相等
    if (r1 == r2): 
        return r1 
  
    else: 
  
        # 创建空列表 
        res = [] 
  
        # 循环以将后续任务追加到列表,直到到达范围r2
        while(r1 < r2+1 ): 
              
            res.append(r1) 
            r1 += 1
        return res 
      
r1, r2 = -1, 1
print(createList(r1, r2))

输出:

[-1, 0, 1]
[-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6]

方法二:使用列表推导(List comprehension)

我们也可以使用列表推导(List comprehension)来达到目的。只需在for循环中从r1到r2迭代“item”,并将所有“item”作为列表返回。

示例:

def createList(r1, r2): 
    return [item for item in range(r1, r2+1)] 
r1, r2 = -2, 4
print(createList(r1, r2))
r1, r2 = -4,6
print(createList(r1, r2))

输出:

[-2, -1, 0, 1, 2, 3, 4]
[-4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6]

方法三:使用Pythonrange()

python中有一个range()函数,它从开始到结束创建一个数字序列,并在序列中输出每个项目。我们将range()与r1和r2一起使用,然后将序列转换为list。

示例:

def createList(r1, r2): 
    return list(range(r1, r2+1)) 
r1, r2 = -2, 4
print(createList(r1, r2))
r1, r2 = -4,6
print(createList(r1, r2))

输出:

[-2, -1, 0, 1, 2, 3, 4]
[-4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6]

方法四:使用numpy.arange()

python numpy.arange()会根据间隔返回元素间距均匀的列表。在这里,我们根据需要将间隔设置为1,以获得所需的输出。

示例:

import numpy as np 
def createList(r1, r2): 
    return np.arange(r1, r2+1, 1) 
r1, r2 = -2, 3
print(createList(r1, r2))

输出:

[-2 -1  0  1  2  3]

相关视频教程推荐:《Python教程

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

Atas ialah kandungan terperinci Python如何创建指定范围的数字列表?(代码示例). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn