3

MATLAB 有一种非常方便的语法来获取列表的一半:

x(1:end/2)

我知道 python 执行此操作的语法是

x[:len(x)/2]

在这种情况下这很好,因为len(x)它很容易编写。但是,当列表的名称很长(有时需要如此)时,这种语法就变得不那么痛苦了,当有一个相似的长名称列表时更是如此。

我知道这是在黑暗中的真实镜头,但是 python 有像 MATLAB 那样的语法选项吗?

4

2 回答 2

6

没有专门的语法。如果你需要做很多,写一个函数:

def half_list(l):
    return l[:len(l)/2]
于 2012-06-09T21:13:55.053 回答
0

不,python 中的列表没有这个概念 end(一个有点相似的概念是索引-1)。
一个简单(但不推荐)解决您的问题的方法是:

l = longnamelist
l[:len(l)/2]

或复制/粘贴长名称...(一些编辑器有复制单词的快捷方式,这使得复制/粘贴长名称非常容易。)

于 2012-06-09T22:22:18.860 回答