Python中range()函数与list切片操作详解

一只小鹿
一只小鹿
发布时间:2026-10-13| 6人浏览过
原创

本文深入解析Python中range()函数的生成机制及其与list数据结构的差异。通过具体代码示例,详细演示了range()在指定步长和起始值时的行为,以及list切片操作中正向索引、负向索引、步长控制及反转序列的高级用法,帮助开发者掌握高效的数据序列处理技巧。

熟悉Python的开发者通常对range()函数和list列表都非常熟悉。在近期实际应用中,笔者重新审视了这两个常用工具,发现了一些过往阅读时忽略但至关重要的细节。本文旨在系统梳理range()函数与list列表的核心特性及使用差异。

>>> range(1,5) #代表从1到5(不包含5) 
[1, 2, 3, 4] 
>>> range(1,5,2) #代表从1到5,间隔2(不包含5) 
[1, 3] 
>>> range(5)  #代表从0到5(不包含5) 
[0, 1, 2, 3, 4] 

接下来,我们将通过具体代码示例展示list列表的切片操作细节。

array = [1, 2, 5, 3, 6, 8, 4] 
#其实这里的顺序标识是 
[1, 2, 5, 3, 6, 8, 4] 
(0,1,2,3,4,5,6) 
(-7,-6,-5,-4,-3,-2,-1) 
 
>>> array[0:] #列出0以后的 
[1, 2, 5, 3, 6, 8, 4] 
>>> array[1:] #列出1以后的 
[2, 5, 3, 6, 8, 4] 
>>> array[:-1] #列出-1之前的 
[1, 2, 5, 3, 6, 8] 
>>> array[3:-3] #列出3到-3之间的 
[3]
#那么两个[::]会是什么那?
>>> array[::2] 
[1, 5, 6, 4] 
>>> array[2::] 
[5, 3, 6, 8, 4] 
>>> array[::3] 
[1, 3, 4] 
>>> array[::4] 
[1, 6] 
#如果想让他们颠倒形成reverse函数的效果 
>>> array[::-1] 
[4, 8, 6, 3, 5, 2, 1] 
>>> array[::-2] 
[4, 6, 5, 1] 

上述内容即为关于Python中range()函数与list列表对比分析的完整分享,希望能为各位读者提供有价值的参考。如果您觉得内容有用,欢迎支持本站。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。