如何在Python中从字符串中随机选择一个元素?
在本文章中,我们将展示如何使用Python从字符串中随机选择一个元素。以下是完成此任务的Python中的各种方法 –
- 使用random.choice()方法
- 使用random.randrange()方法
- 使用random.randint()方法
- 使用random.random()
- 使用random.sample()方法
- 使用random.choices()方法
假设我们有一个包含一些元素的字符串。我们将使用上面指定的不同方法从给定的输入字符串中生成随机元素。
阅读更多:Python 教程
方法1:使用random.choice()方法
算法(步骤)
以下是要执行所需任务的算法/步骤 –
- 使用import关键字导入random模块(用于生成伪随机数。因为这些是伪随机数,它们实际上并不是随机的。该模块可用于生成随机数,从列表或字符串中打印随机值等)。
- 创建一个字符串并添加一些虚构数据。
- 使用random.choice()方法从字符串中生成一个随机项(该函数从指定序列即字符串中返回一个随机元素)并将输入字符串作为参数传递给choice()函数。
- 打印生成的随机字符串项。
示例
以下程序使用random.choice()方法从字符串中返回一个随机元素 –
import random
#输入字符串
givenString = "TutorialsPoint"
# 打印给定的输入字符串
print("The given input String: ", givenString)
# 使用random.choice()方法从字符串中生成随机项
randomItem = random.choice(givenString)
print("The generated random String item = ", randomItem)
输出
('The given input String: ', 'TutorialsPoint')
('The generated random String item = ', 't')
方法2:使用random.randrange()方法
算法(步骤)
以下是要执行所需任务的算法/步骤 –
- 使用random.randrange()方法从字符串中生成一个随机索引值(返回指定范围内的随机数),通过将输入字符串的长度作为参数传递给它使用len()函数(对象中的项目数由len()方法返回)。
- 获取位于上述索引处的元素,并创建一个变量来存储它。
示例
以下程序使用random.randrange()方法从字符串中返回一个随机元素 –
import random
# 输入字符串
givenString = "TutorialsPoint"
# 打印输入的字符串
print("给定的输入字符串:", givenString)
# 通过将字符串长度传递给random.randrange()方法来生成随机索引值
randomIndex = random.randrange(len(givenString))
# 从字符串中获取在上述索引处存在的元素
randomItem = givenString[randomIndex]
print("生成的随机字符串项 = ", randomItem)
输出
('给定的输入字符串:', 'TutorialsPoint')
('生成的随机字符串项 = ', 'r')
方法3:使用random.randint()方法
算法(步骤)
以下是执行所需任务的算法/步骤:
- 使用random.randint()方法(返回指定范围内的随机数)从字符串中生成随机索引值,将输入字符串的长度作为参数传递给它使用len()函数(对象中的项数由len()方法返回)。
-
获取出现在上述索引处的元素,并创建存储该元素的变量。
示例
以下程序使用random.randint()方法从字符串中返回随机元素:
import random
# 输入字符串
givenString = "TutorialsPoint"
# 打印输入的字符串
print("给定的输入字符串:", givenString)
# 通过将字符串长度作为参数传递给random.randint()函数来生成随机索引值
randomIndex = random.randint(0, len(givenString)-1)
# 获取在上述索引处存在的元素,创建存储该元素的变量
randomItem = givenString[randomIndex]
print("生成的随机字符串项 = ", randomItem)
输出
('给定的输入字符串:', 'TutorialsPoint')
('生成的随机字符串项 = ', 'i')
方法4:使用random.random()
算法(步骤)
- 使用random.random()函数(在0和1之间返回一个浮点值)生成随机浮点数,并将其乘以字符串的长度以获得随机索引,然后使用int()函数将结果转换为整数。
-
获取出现在上述索引处的元素,并创建存储该元素的变量。
示例
以下程序使用random.random()方法从字符串中返回随机元素:
import random
# 输入字符串
givenString = "TutorialsPoint"
# 输出输入字符串
print("给定的输入字符串:", givenString)
# 生成一个随机浮点数,并将其乘以字符串的长度来获取一个随机索引,然后将其转换为整数
randomIndex = int(random.random() * len(givenString))
# 从字符串中获取在上面索引处的元素
randomItem = givenString[randomIndex]
print("生成的随机字符串:", randomItem)
输出
('给定的输入字符串:', 'TutorialsPoint')
('生成的随机字符串:', 'n')
方法5:使用random.sample()方法
算法(步骤)
- 通过向random.sample()方法传递字符串和要生成的随机项数量作为参数,使用该方法从字符串生成所需数量的随机项。
-
random.sample()方法返回一个包含从序列中随机选择的元素的列表。
语法
random.sample(sequence, k)
- 打印指定数量的生成的随机字符串项列表。
示例
以下程序使用random.sample()方法从字符串中返回n个随机元素 –
import random
# 输入字符串
givenString = "TutorialsPoint"
# 输出输入字符串
print("给定的输入字符串:", givenString)
# 使用random.sample()方法从字符串生成3个随机项
randomItems = random.sample(givenString, 3)
print("生成的三个随机字符串项:", randomItems)
输出
('给定的输入字符串:', 'TutorialsPoint')
('生成的三个随机字符串项:', ['o', 'P', 'r'])
方法6:使用random.choices()方法
算法(步骤)
- 通过向random.choices()方法传递字符串和要生成的随机项数量(k)作为参数,使用该方法从字符串生成所需数量的随机项。
-
random模块包含random.choices()方法。该方法对于从字符串或特定序列中选择多个项目非常有用。
语法
random.choices(sequence, k)
- 打印生成的随机字符串项的指定数量。
示例
以下程序使用random.choices()方法从元组中返回n个随机元素 –
import random
# 输入字符串
givenString = "TutorialsPoint"
# 打印输入字符串
print("给定的输入字符串: ", givenString)
# 使用random.choices()方法从字符串中生成3个随机项
randomItems = random.choices(givenString, k=3)
print("生成的3个随机字符串项 = ", randomItems)
输出
给定的输入字符串: TutorialsPoint
生成的3个随机字符串项 = ['a', 'o', 'P']
结论
我们学习了如何利用random模块的各种函数从字符串中选择一个项。