我们在 Python 中有 sorted() 函数,可以用来排序输入中给出的字符串。但是如果我们必须对输入字符串进行反向排序呢?我们可以使用这个 sorted()函数进行反向排序吗?答案是肯定的。在本教程中,我们将学习如何使用 sorted()函数对输入字符串进行反向排序。
用于字符串反向排序的 sorted()函数
在 Python 中,字符串是不可变的数据类型,这就是为什么我们很难对字符串进行反向排序。但是,借助 sorted() 功能,我们可以轻松执行字符串的反向排序任务。对于使用 sorted() 功能进行反向排序,我们可以使用以下方法:
- 借助于 sorted() + reduce() + lambda
- 借助 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