Jython中按长度排序的URL列表
我正在编写一个Jython脚本来对URL列表进行排序 我有一个如下列表:Jython中按长度排序的URL列表,url,list,sorting,jython,Url,List,Sorting,Jython,我正在编写一个Jython脚本来对URL列表进行排序 我有一个如下列表: 管道和逗号将路径与该路径下的文件量分隔开。 是否有可能使用Jython按长度对URL排序,使其看起来像下面的列表: 希望你们明白我的意思,任何帮助都将不胜感激。干杯对它们进行排序不会解决这个问题吗?对它们进行排序不会解决这个问题吗?使用排序功能按长度排序: urls.sort(lambda a, b: cmp(len(a), len(b))) 为了提高性能,有些人可能更喜欢装饰排序非装饰模式:
管道和逗号将路径与该路径下的文件量分隔开。 是否有可能使用Jython按长度对URL排序,使其看起来像下面的列表:
希望你们明白我的意思,任何帮助都将不胜感激。干杯对它们进行排序不会解决这个问题吗?对它们进行排序不会解决这个问题吗?使用排序功能按长度排序:
urls.sort(lambda a, b: cmp(len(a), len(b)))
为了提高性能,有些人可能更喜欢装饰排序非装饰模式:
urllengths= [(len(url), url) for url in urls]
urllengths.sort()
urls= [url for (l, url) in urllengths]
或作为一个班轮:
urls= zip(*sorted((len(url), url) for url in urls))[1]
使用排序函数按长度排序:
urls.sort(lambda a, b: cmp(len(a), len(b)))
为了提高性能,有些人可能更喜欢装饰排序非装饰模式:
urllengths= [(len(url), url) for url in urls]
urllengths.sort()
urls= [url for (l, url) in urllengths]
或作为一个班轮:
urls= zip(*sorted((len(url), url) for url in urls))[1]
在jython赶上Python2.4之前,您不能将key参数用于list.sort(): 所以,就像过去的好日子一样,我们有这个成语。要按项目长度对
mylist
进行排序,我们将生成(len(item),item)
元组的装饰列表,对其进行排序,最后将项目剥离回来:
decorated_list = zip(map(len, mylist), mylist)
decorated_list.sort()
sorted_list = [i[1] for i in decorated_list]
在jython赶上Python2.4之前,您不能将key参数用于list.sort():
所以,就像过去的好日子一样,我们有这个成语。要按项目长度对mylist
进行排序,我们将生成(len(item),item)
元组的装饰列表,对其进行排序,最后将项目剥离回来:
decorated_list = zip(map(len, mylist), mylist)
decorated_list.sort()
sorted_list = [i[1] for i in decorated_list]
英语词典已排序,但在所有两个字母的单词之前没有得到所有一个字母的单词。英语词典已排序,但在所有两个字母的单词之前没有得到所有一个字母的单词。Python支持sort()
参数sort()
,因此您可以只使用:url.sort(key=len)
。仅在jython-2.5不在2.2系列上时支持jython支持sort()
的key
参数,因此您可以只使用:url.sort(key=len)
。仅在jython-2.5不在2.2系列上支持,因为我将使用对称:sorted\u list=map(operator.itemgetter(1),definated\u list)
而不是sorted_list=[i[1]for i in decordented_list]
或(用于对称):decordented_list=zip([len(i)for i in mylist],mylist)(Jython 2.2)Jython 2.2没有运算符.itemgetter()。对于对称性,我将使用:sorted_list=map(operator.itemgetter(1),decordented_list)
而不是sorted_list=[i[1]对于修饰列表中的i]
或(对于对称性):修饰列表=zip([len(i)表示mylist中的i],mylist)(Jython 2.2)Jython 2.2没有运算符.itemgetter()。