Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 读取和写入数组的变量片_Python_Python 3.x_List - Fatal编程技术网

Python 读取和写入数组的变量片

Python 读取和写入数组的变量片,python,python-3.x,list,Python,Python 3.x,List,众所周知,我们可以使用切片从阵列中轻松提取数据: >>> L = range(10) >>> L[::2] [0, 2, 4, 6, 8] 我经常在需要使用切片时编写代码,如下所示: >>> L[ind:ind+x] 我现在好奇的是:为什么没有一个运营商来实现这一点?例如,在Verilog中,我们可以使用如下切片: >>> L[ind+:x] 有没有其他方法可以轻松实现该功能?没有,Python没有这种语法。不过这没关

众所周知,我们可以使用切片从阵列中轻松提取数据:

>>> L = range(10)
>>> L[::2]
[0, 2, 4, 6, 8]
我经常在需要使用切片时编写代码,如下所示:

>>> L[ind:ind+x]
我现在好奇的是:为什么没有一个运营商来实现这一点?例如,在Verilog中,我们可以使用如下切片:

>>> L[ind+:x]

有没有其他方法可以轻松实现该功能?

没有,Python没有这种语法。不过这没关系——Python并不是一种奖励有十种方法来做任何事情的语言。

不,Python没有这样的语法。不过这没关系——Python不是一种奖励拥有十种方法来完成每件事的语言

为什么没有一家运营商可以做到这一点

自Python的早期版本以来,列表切片的语法没有改变。原因可能是个人的判断或其他语言的影响。事实就是这样。我们必须学会接受它

有没有其他方法可以轻松实现该功能

当然可以。注
[]
\uuu getitem\uuu
的语法糖,
ind:ind+x
可以表示为
切片
对象。也许你更喜欢第二种变体

L = list(range(10))

L[3:7]                        # [3, 4, 5, 6]

m, k = 3, 4
L.__getitem__(slice(m, m+k))  # [3, 4, 5, 6]
为什么没有一家运营商可以做到这一点

自Python的早期版本以来,列表切片的语法没有改变。原因可能是个人的判断或其他语言的影响。事实就是这样。我们必须学会接受它

有没有其他方法可以轻松实现该功能

当然可以。注
[]
\uuu getitem\uuu
的语法糖,
ind:ind+x
可以表示为
切片
对象。也许你更喜欢第二种变体

L = list(range(10))

L[3:7]                        # [3, 4, 5, 6]

m, k = 3, 4
L.__getitem__(slice(m, m+k))  # [3, 4, 5, 6]

没有这样的语法。通过编程操作切片的唯一方法是
slice
对象

i = slice(ind, ind+x)
print(x[i])

没有这样的语法。通过编程操作切片的唯一方法是
slice
对象

i = slice(ind, ind+x)
print(x[i])