你(即时)的问题是在这条线:
sublist = list[j, k]
想必list
是项目的列表。当你做somelist[a, b]
时,Python会看到相当于somelist[(a, b)]
的东西。所以,你可以看到,你的索引somelist
与tuple
(这是行不通的)。有机会,你想要一个slice
。在这种情况下,你会做:
sublist = list[j:k]
然而,即使进行此更改后,您仍然有问题 - 值得注意的是,在你的代码j
和k
是str
类型,并列出要被索引/切成整数(或None
...)。所以,现在我们有:
sublist = list[int(j):int(k)]
在这一点上,你可能会不再看到错误,但你不会看到你想这给我们带来了下一个问题的结果。
sorted = sublist.sort
这里你只是给一个名字分配一个绑定方法。你实际上没有分类任何东西。如果要排序的子列表(到位),你会怎么做:
sublist.sort()
print(sublist)
如果您没有问题整理出来的地方,你可以使用内置的sorted
功能(前提是你还没有命名的东西否则sorted
;-)
print(sorted(sublist))
注意,它被普遍接受的命名变量同样的事情作为一个内置式可导致难以:-)阅读和调试代码。
虽然我们在这,我可能会提到有一种更好的方式来块了你的字符串 - 您可以.split
它。例如operation.split()
将给你['SORT', '5', '7']
,而不需要对输入字符串的输入和索引做出假设。
首先'排序= sublist.sort'这是不正确。它应该是'sublist.sort()返回子列表'。 – Marcin 2015-02-12 06:28:43