python range() 函数可创建一个整数列表,一般用在 for 循环中。

语法:

range(start, stop[, step])

参数说明:

start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0,5);

stop: 计数到 stop 结束,但不包括 stop。例如:range(0,5) 是[0, 1, 2, 3, 4]没有5

step:步长,默认为1。例如:range(0,5) 等价于 range(0, 5, 1)

对于 range() 函数,有几个注意点:

(1)它表示的是左闭右开区间;

(2)它接收的参数必须是整数,可以是负数,但不能是浮点数等其它类型;

(3)它是不可变的序列类型,可以进行判断元素、查找元素、切片等操作,但不能修改元素;

(4)它是可迭代对象,却不是迭代器。

例子:

for i in range(2,11,2):print(i)

输出:

2

4

6

8

10

还可以递减输出

for i in range(11,1,-4):print(i)

输出:

11

7

3

创建数字列表:

使用list()函数将range()的结果直接转化成列表。

print(list(range(2,11,2)))

输出:

[2,4,6,8,10]

遍历一个列表list:

list=[1,2,3,4,5,6,7]for i inrange(len(list)):print(list[i])

输出:

1

2

3

4

5

6

7

range()函数能够创建任何需要的数字集,创建一个包含前10个整数的平方。

squares=[] #创建一个空列表

for value in range(1,11):

square=value**2 #square临时变量

squares.append(square) #append()函数增加列表元素

print(squares) #此处不需要缩进

输出:

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

为了使代码更加简洁,可以选择不使用临时变量square

squares=[]for in vaue range(1,11):

squares.append(value**2)print(squares)

range()函数的不可修改性

三种基本序列类型:列表(list)、元组(tup)、范围对象(range)。range是和列表与元组有着相同地位的基础序列。除了range,字符串也是不可改变的序列类型。

range序列的特殊性:

普通序列支持12种操作,range只支持10种,不支持进行加法拼接和乘法重复。

range(2)+range(3)

TypeError: unsupported operand type(s)for +: 'range' and 'range'range(2)*2TypeError: unsupported operand type(s)for *: 'range' and 'int'

那么问题来了:同样是不可变序列,为什么字符串和元组就支持上述两种操作,而偏偏 range 序列不支持呢?虽然不能直接修改不可变序列,但我们可以将它们拷贝到新的序列上进行操作啊,为何 range 对象连这都不支持呢?

官方的回答:

…due to the fact that range objects can only represent sequences that follow a strict pattern and repetition and concatenation will usually violate that pattern.

原因是 range 对象仅仅表示一个遵循着严格模式的序列,而重复与拼接通常会破坏这种模式…

问题的关键就在于 range 序列的 pattern,它表示的就类似于等差数列,拼接两个等差数列,或者重复拼接一个等差数列,其它修改动作也会破坏等差数列结构,所以这就是为啥 range 类型不支持这两个操作的原因了。

python利用range生成包含1-10的列表_Python列表干货:创建数字列表:range()函数用法...相关推荐

  1. python生成序列数(1-10)的立方列表_Python 4.3 创建数值列表(动手试一试)

    4-3数到20:使用一个for循环打印数字1~20(含) 如下: for numbers in range(1,21): (空格)print(numbers) 4-4一百万:创建一个列表,其中数字包含 ...

  2. python从random生成列表_详解Python利用random生成一个列表内的随机数

    详解Python利用random生成一个列表内的随机数 首先,需要导入random模块: import random 随机取1-33之间的1个随机数,可能重复: random.choice(range ...

  3. python 利用random生成验证码与MD5码加密过程

    python 利用random生成随机数 #!usr/bin/env python #_*_ coding:utf-8 _*_import randomprint('随机整成range(1,5)之间的 ...

  4. python利用线程生成不同尺寸的缩略图

    利用线程生成缩略图: 读取当前路径下的png文件,在当前路径下生成6464,128128和32*32的缩略图. """ 利用线程生成缩略图 读取当前路径下的png文件,在 ...

  5. python创建数字列表_Python 生成一个从0到n个数字的列表4种方法小结

    Python 生成一个从0到n个数字的列表4种方法小结 我就废话不多说了,直接上代码吧! 第一种 def test1(): l = [] for i in range(1000): l = l + [ ...

  6. python内置函数表示2的10次幂_Python常见内置函数用法(二)

    本文作者:孙雪丽 文字编辑:杨慧琳 技术总编:张学人重大通知!!!2019年6月22日至24日在河南郑州举行Stata编程技术特别训练营,招生工作已经圆满结束.另外爬虫俱乐部将于2019年7月5日至7 ...

  7. python如何返回一个列表_python如何返回元组,列表或字典的?

    Python中的数据结构用于存储数据集合,这些数据可以从函数中返回.那么python如何返回元组,列表或字典的?在本文中,我们将探讨如何从这些数据结构中返回多个值:元组,列表和字典.您可以从Pytho ...

  8. python创建数字列表_Python创建数字列表

    [一]range()函数在python中可以使用range()函数来产生一系列数字for w in range(1,11): print(w) 输出: 1 2 3 4 5 6 7 8 9 10 #注意 ...

  9. python 定义数字_Python:已定义数字列表的差异

    我正在尝试创建一个打印已定义数字列表的方差的函数: grades = [100, 100, 90, 40, 80, 100, 85, 70, 90, 65, 90, 85, 50.5] 到目前为止,我 ...

最新文章

  1. 皮一皮:中文汉字真是博大精深...
  2. tasklist命令参数应用详细图解
  3. boost::mp11::mp_min_element_q相关用法的测试程序
  4. VTK:PolyData之ThresholdPoints
  5. U3D 脚本添加和获得对象
  6. scanf读取字符_在C语言中使用scanf()读取整数时跳过字符
  7. html中form标签的作用style,HTML5中meta常用标签属性说明
  8. 自己定义控件-DownSlidingDrawer
  9. 苹果App Store搜索出Bug,网友:完美避开所有正确答案
  10. 编程工具│Fiddler 抓包 mumu 模拟器详细配置步骤
  11. r软件读取oracle数据文件,科学网—R软件之读写数据文件 - 刘永辉的博文
  12. 改进后的速算小游戏(2011211909 苟玲、2011211933 郝怡然)
  13. 正六边形C语言输出算法记录
  14. Echarts制作态势图、热点图、轨迹图,使用百度底图,地图下钻
  15. flutter菜鸟教程!mysql半同步的主从搭建方式
  16. Sim300模块AT命令
  17. gitlab仓库的克隆和提交
  18. iPhone4S价格走势平稳 现价5999值得买
  19. 7月清北学堂培训 Day 1
  20. Golang安装第三方库

热门文章

  1. 2022年9月青少年C/C++软件编程(四级)等级考试试卷及答案解析
  2. 水滴IP告诉你,IP地址是如何划分的
  3. cisco路由器启动过程
  4. 计算机毕业设计SSM电脑配件仓储后台管理系统【附源码数据库】
  5. 音频输出设备是如何决定的
  6. python爬虫抓网页的总结
  7. Matlab小结6(线性规划)
  8. IDEA设置自定义主题背景
  9. word 怎么删除多余的空白页
  10. 德佑地产房产经纪人区域总监访谈:精耕,业精于勤