如何使用Python按字母顺序排序单词

如何使用Python按字母顺序排序单词

在本篇文章中,我们将向您展示如何使用 Python 按字母顺序排序单词。以下是按字母顺序排序单词的方法:

  • 使用冒泡排序

  • 使用 sorted() 函数

  • 使用 sort() 函数

使用冒泡排序

算法(步骤)

以下是执行所需任务的算法/步骤:

  • 创建一个变量 来存储输入字符串。

  • 使用 split() 函数 (将字符串拆分为列表。我们可以定义分隔符;默认分隔符是任意空白字符)将输入字符串拆分为一个单词列表,并创建一个变量来存储它。

  • 使用 for 循环 , 遍历单词列表中的每个单词,直到达到单词列表的长度,使用 len() 函数 (len() 方法返回对象中的项目数。当对象是字符串时,它返回字符串中的字符数)

  • 使用 lower() 函数 将所有单词转换为小写。

  • 应用 冒泡排序 对单词进行排序并打印它们。

示例

以下程序使用Python中的冒泡排序返回句子的排序后的单词−

# input string
inputString = "the Quick brown fox jumPs over the lazY Dog"
print("Input String =",inputString)
# splitting the input string into a list of words
wordsList = inputString.split(" ")
# traversing through each word in the words list till the length of the words list
for w in range(len(wordsList)):
   # converting all the words into lowercase using the lower() function
   wordsList[w]=wordsList[w].lower()
# traversing through each word from the end in the words list
# Applying bubble sort to sort the words
for n in range(len(wordsList)-1, 0, -1):
   for i in range(n):
      if wordsList[i] > wordsList[i + 1]:
         # swapping data if the element is less than the next element in the array
         wordsList[i], wordsList[i + 1] = wordsList[i + 1], wordsList[i]
# printing the list of sorted Words in alphabetic Order
print("Sorted Words Alphabetically =",wordsList)

输出

执行上述程序将生成以下输出-

Input String = the Quick brown fox jumPs over the lazY Dog
Sorted Words Alphabetically = ['brown', 'dog', 'fox', 'jumps', 'lazy', 'over', 'quick', 'the', 'the']

使用sorted()函数

sorted()函数返回给定可迭代对象的排序列表。

您可以选择升序或降序。数字按数字顺序排序,而字符串按字母顺序排列。

语法

sorted(iterable, key=key, reverse=reverse)

参数

iterable- It is a sequence.
key - A function that will be executed to determine the order. The default value is None.
reverse - A Boolean expression. True sorts ascending, False sorts descending. The default value is False.

算法(步骤)

以下是执行所需任务的算法/步骤:

  • 创建一个变量来存储输入字符串。

  • 使用 sorted() 函数按字母顺序对单词列表中的单词进行排序,将单词列表作为参数传递给它。

  • 以字母顺序打印排序后的单词,并使用 join() 函数以‘ ’(空字符串)连接它们,将其转换为字符串。(这是Python中的一个字符串函数,用于连接由字符串分隔符分隔的序列元素。此函数将序列元素连接起来形成一个字符串)

示例

以下程序使用Python中的 sorted() 函数返回句子中的单词排序:

# input string
inputString = "the Quick brown fox jumPs over the lazY Dog"
# splitting the input string into a list of words based on spaces
wordsList = inputString.split(" ")
# traversing through each word till the length of the words list
for w in range(len(wordsList)):
   # converting all the words into lowercase using the lower() function
   wordsList[w]=wordsList[w].lower()
# sorting the words of words list in alphabetical order
sortedWords = sorted(wordsList)
# printing the sorted Words in alphabetic Order as a string
print(' '.join(sortedWords))

输出

在执行上述程序时,将生成以下输出−

brown dog fox jumps lazy over quick the the

使用sort()方法

sort()方法可以原地对列表进行排序。这表示sort()方法会改变列表元素的顺序。

简单来说,sort()方法可以按升序或降序对列表进行排序。如果是字符串类型,它将按字母顺序进行排序。

默认情况下,sort()方法使用小于号运算符<来对列表的条目进行排序,即按升序排序。换句话说,它会将较小的元素放在较大的元素之前。

要按从高到低的顺序对元素进行排序(降序),可以在sort()方法中使用reverse=True参数。

list.sort(reverse=True)

算法(步骤)

以下是执行所需任务的算法/步骤−

  • 创建一个变量来存储输入字符串。

  • 对单词列表应用 sort() 函数,按字母顺序对单词列表中的单词进行排序。

  • 以字母顺序打印排序后的单词,并使用‘ ’(空字符串)将它们连接起来,将它们转换为一个字符串,使用 join() 函数。

示例

以下程序使用Python中的 sort() 函数返回句子的排序后的单词−

# input string
inputString = "the Quick brown fox jumPs over the lazY Dog"
# splitting the input string into a list of words based on spaces
wordsList = inputString.split(" ")
# traversing through each word till the length of the words list
for w in range(len(wordsList)):
   # converting all the words into lowercase using the lower() function
   wordsList[w]=wordsList[w].lower()
# sorting the words of words list in alphabetical order using sort()
wordsList.sort()
# printing the sorted Words in alphabetic Order as a string
print(' '.join(wordsList))

输出

在执行后,以上程序将生成以下输出−

brown dog fox jumps lazy over quick the the

结论

在本教程中,我们学习了如何使用三种不同的方法来在Python中对句子中的单词进行排序。我们还学习了如何使用冒泡排序来对列表进行排序。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程