📜  Python – 对字符串进行反向排序

📅  最后修改于: 2022-05-13 01:55:15.517000             🧑  作者: Mango

Python – 对字符串进行反向排序

排序一直是非常流行的实用程序,到处都有很多应用程序, Python语言已经选择了这些应用程序。 Python在其语言中提供了一个排序函数来执行此任务。但由于并非Python中的所有容器都是可变的,例如字符串,因此 sort函数不起作用,因为它就地尝试排序,而不变性阻止了这一点。让我们讨论一些可以反向排序字符串的方法。

方法#1: join() + sorted() + reverse key
上述功能的组合可以潜在地解决这个特定问题。这个任务分两步执行,第一步我们得到反向排序的字符列表,然后我们加入结果得到排序后的字符串。

# Python3 code to demonstrate
# Reverse Sort a String
# using join() + sorted() + reverse
  
# initializing string 
test_string = "geekforgeeks"
  
# printing original string 
print("The original string : " + str(test_string))
  
# using join() + sorted() + reverse
# Sorting a string 
res = ''.join(sorted(test_string, reverse = True))
      
# print result
print("String after reverse sorting : " + str(res))
输出 :
The original string : geekforgeeks
String after reverse sorting : srokkggfeeee

方法 #2:使用sorted() + reduce() + lambda
也可以使用上述 3 个功能的组合来执行此特定任务。在这里,我们使用由 reduce函数连接的 lambda函数连接生成的反向排序的字符列表。仅适用于 Python2。

# Python code to demonstrate
# Reverse Sort a String
# using sorted() + reduce() + lambda
  
# initializing string 
test_string = "geekforgeeks"
  
# printing original string 
print("The original string : " + str(test_string))
  
# using sorted() + reduce() + lambda
# Reverse Sort a String
res = reduce(lambda x, y: x + y, sorted(test_string, reverse = True))
      
# print result
print("String after reverse sorting : " + str(res))
输出 :
The original string : geekforgeeks
String after reverse sorting : srokkggfeeee