>>> x = [4,5,81,5,28958,28] # first list
>>> print sorted(x)
[4, 5, 5, 28, 81, 28958]
>>> x
[4, 5, 81, 5, 28958, 28]
>>> x.sort() # sort the list in place
>>> x
[4, 5, 5, 28, 81, 28958]
>>> x.append(1) # add to the list
>>> x
[4, 5, 5, 28, 81, 28958, 1]
>>> sorted(x)
[1, 4, 5, 5, 28, 81, 28958]
正如许多其他人所指出的,您可以将一个数字向前排序如下:
>>> int(''.join(sorted(str(2314))))
1234
这几乎是最标准的方法。
倒数?在带有尾随零的数字中不起作用。
>>> y = int(''.join(sorted(str(2314))))
>>> y
1234
>>> int(str(y)[::-1])
4321
正如许多其他人所指出的,您可以将一个数字向前排序如下:
这几乎是最标准的方法。
倒数?在带有尾随零的数字中不起作用。
[::-1]
表示法表示iterable将以相反的顺序遍历。正如Mark Rushakoff在他的回答中已经提到(但没有解决)的那样,
str(n)
不处理带前导零的数字n
,这是Kaprekar's operation所需要的。hughdbrown的答案同样不适用于前导零。确保有四个字符串的一种方法是使用
zfill
字符串方法。例如:您还应该注意,在3之前的Python版本中,数字文本中的前导零表示八进制:
在Python 3中,
0043
根本不是有效的数字文本。按升序和降序对数字进行排序:
像这样:
如果您需要它们再次成为数字(不仅仅是字符串),请对它们调用
int()
:相关问题 更多 >
编程相关推荐