首页 > 试题广场 >

若 a = range(100),以下哪些操作是合法的?

[不定项选择题]
若 a = range(100),以下哪些操作是合法的?
  • a[-3]
  • a[2:13]
  • a[::3]
  • a[2-3]
range(100)表示从0到99共一百个数
a[-3]和a[2-3]意味着倒数第三个数和倒数第一个数 分别是97 99
a[::3] start0 end99 step3 依次是0 3 6 9一直到99 步长为3
a[2:13]从a[2]到a[12] 不包括13,前闭后开
发表于 2018-09-30 10:16:27 回复(8)
a[2-3]就是相当于a[-1]
发表于 2018-11-23 09:46:44 回复(0)
首先:a=range(100)的意思的a是一个1到100排序
A:a[-3]
D:a[2-3]-->a[-1]
取a当中倒数第i个数-->a[0]=100;a[-1]=99;a[-2]=98;a[-3]=97
所以A的输出结果是97,D的输出结果是99

B:a[2:13]
取排列a第2到13个数,其结果是2到13的一个排列

C:a[::3]
实际上是a[start:end:step]
根据a=range(100)可得start的默认值是1,end的默认值是100,step的默认值是1。
发表于 2018-03-23 11:41:34 回复(7)
考察:Python中切片的问题。
首先,理解a=range(100)是什么意识?
range(start, end, step),start:起始值;end:终值;step:步长,默认为1。
a:0、1、2、3、4、5、......99。
所以,
正索引范围为:a[0] -a[end-1]
即 a[0] = 0,a[1] = 1,......,依次类推;
负索引范围为:a[-1] -a[-end]
即 a[-1] = 99,a[-2] = 98,......,依次类推。
发表于 2018-04-24 12:40:37 回复(1)

此题考查的是对 Python 中 切片(Slice)功能的理解:L[start : stop [ : step]]

start 默认值是 0;stop 默认值为 L 的长度;step 默认值是 1。

Python 切片

编辑于 2018-03-28 17:25:15 回复(0)
a:  [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99];
A T   :a[-1]=99,a[-2]=98,a[-3]=97
B T   :a[2:13]=[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
C T   :a[::3]=[0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99]
D T   :a[2-3]=99
发表于 2018-06-22 11:12:23 回复(0)

这题涉及抽象基类和索引使用,range()对象实现了Sequence类功能,所以可以用[]的方式进行索引

发表于 2019-05-31 09:23:05 回复(0)
各个选项的结果运行如下:

发表于 2019-01-06 20:21:16 回复(0)
a[2-3] = a[-1],D正确
编辑于 2018-08-01 20:00:48 回复(0)
python3中range返回的是迭代对象而不是列表
发表于 2020-10-01 21:37:34 回复(0)
0~99
发表于 2018-08-06 11:05:16 回复(0)
注意D  a[2-3]=a[-1]
发表于 2018-08-10 09:28:59 回复(0)
In [17]: a = range(100)

In [18]: a[-1]
Out[18]: 99

In [19]: a[-3]
Out[19]: 97

In [20]: a[::3]
Out[20]: range(0, 100, 3)

In [21]: a[2:13]
Out[21]: range(2, 13)

In [22]: a[2-3]
Out[22]: 99

发表于 2018-04-17 09:27:14 回复(0)
其实是a的下标范围考察啊(*/ω\*)
发表于 2018-03-04 14:52:06 回复(0)
abcd
发表于 2018-03-02 12:37:44 回复(0)
a=range(100) 代表从0到99
a[-3] 代表倒数第三个数 a[2-3]=a[-1]就是倒数第一个数
a[::3} 代表步长为0
a[2:13] 从第二个数到第12个数
发表于 2022-08-12 20:43:35 回复(0)
切片可以放表达式。。。。。
发表于 2020-10-17 14:51:29 回复(0)

关于range的总结

https://stackoverflow.com/questions/39241877/what-is-a-class-range
https://docs.python.org/3/library/stdtypes.html#range

Python3

ragne()返回 <class range> 它属于 built-in types, 实现了collections.abc.Sequence抽象类。支持的method有:

  • containment tests. 5 in range(10)返回布尔值
  • element index lookup.range(10)[5]返回元素
  • slicing(support for negative indices).range(10)[3:7] 仍然返回range object

Python2

just a function that return list

编辑于 2019-04-24 13:36:38 回复(0)
abcd
发表于 2018-03-19 12:56:37 回复(1)
才知道索引可以是负的。。
发表于 2024-03-28 12:38:14 回复(0)