您的位置:

Python 反向排序

我们在 Python 中有 sorted() 函数,可以用来排序输入中给出的字符串。但是如果我们必须对输入字符串进行反向排序呢?我们可以使用这个 sorted()函数进行反向排序吗?答案是肯定的。在本教程中,我们将学习如何使用 sorted()函数对输入字符串进行反向排序。

用于字符串反向排序的 sorted()函数

在 Python 中,字符串是不可变的数据类型,这就是为什么我们很难对字符串进行反向排序。但是,借助 sorted() 功能,我们可以轻松执行字符串的反向排序任务。对于使用 sorted() 功能进行反向排序,我们可以使用以下方法:

  1. 借助于 sorted() + reduce() + lambda
  2. 借助 join() + sorted() +反向键

在上面提到的两种方法中,我们将通过一个示例程序来了解这些方法的实现。

方法 1:借助 sorted() + reduce() + lambda:

我们可以通过使用 reduce()和 lambda 函数与 sorted()函数的组合来执行字符串的反向排序。在这个方法中,在以相反的顺序操作输入字符串之后,我们将使用 lambda 函数加入结果反向排序的字符列表。

注意:我们只能在 Python 2.x 版本中使用这个函数。这是因为 reduce()函数从 Python 3.x 版本中删除了,如果我们在具有 3.x 版本的 Python 上运行,将会抛出一个错误。

示例:


# Taking an input string
inputString = input("Give an input string for reverse sorting: ")
# Reverse Sorting the input string 
resultantString = reduce(lambda x, y: x + y, sorted(inputString, reverse = True)) # reverse sorting with using sorted() + reduce() + lambda function
# printing reverse sorted string in output as result
print("The input string after reverse sorting is: " + str(resultantString)) 

输出

Give an input string for reverse sorting: JAVATPOINT
The input string after reverse sorting is: VTTPONJIAA

方法 2:借助 join() + sorted() +反向键:

通过使用 join()函数和 reverse key 与 sorted()函数的组合,我们可以分两步非常轻松地完成反向排序的任务。在操作的第一步中,我们将获得反向排序的字符列表,在第二步中,我们将这些字符连接起来,从而获得反向排序的字符串。

示例:


# Taking an input string
inputString = input("Give an input string for reverse sorting: ")
# Reverse Sorting the input string 
resultantString = ''.join(sorted(inputString, reverse = True)) # reverse sorting with using sorted() + join() function with reverse key
# printing reverse sorted string in output as result
print("The input string after reverse sorting is: " + str(resultantString)) 

输出

Give an input string for reverse sorting: JAVATPOINT
The input string after reverse sorting is: VTTPONJIAA