0

Alphanum 算法python 实现)“对包含字母和数字混合的字符串进行排序。给定混合字符和数字的字符串,它按值顺序对数字进行排序,同时按 ASCII 顺序对非数字进行排序。最终结果是自然的排序顺序。”

我在 python2.7 中的尝试如下。

>>> import alphanum
>>> unsorted = ['NASEC-100', 'NASEC-200', 'NASEC-99', 'NASEC-101']
>>> sorted = unsorted[:]
>>> sorted.sort(alphanum)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'module' object is not callable
4

2 回答 2

1

我只是一个初学者,但我不记得python标准库中的字母数字。

如果 alphanum.py 是您编写或下载的内容,请尝试from alphanum.py import *
我似乎记得我构建的一个模块也有类似的问题,该模块是使用它而不是仅仅导入来纠正的。

于 2011-07-14T15:13:49.433 回答
0

感谢脚本作者 Chris Hulan 的提示。这是它工作的相同场景:

>>> import alphanum
>>> unsorted = ['NASEC-100', 'NASEC-200', 'NASEC-99', 'NASEC-101']
>>> sorted = unsorted[:]
>>> sorted.sort(alphanum.alphanum)
>>> sorted
['NASEC-99', 'NASEC-100', 'NASEC-101', 'NASEC-200']
于 2011-07-15T13:39:43.663 回答