Python 随机将字符串转换为大写
在本文中,我们将学习如何使用Python随机将字符转换为大写。
使用的方法
以下是完成此任务的各种方法:
- 使用join(),choice(),lower(),upper()函数。
-
使用random.randInt()和random.sample()函数。
-
使用map(),choice(),zip()函数。
示例
假设我们输入了一个字符串。我们将使用上述方法随机将输入字符串的字符转换为大写。
输入
inputString = 'tutorialspoint'
输出
String after converting chars lower or uppercase randomly:
tUToriaLsPOINT
在这个示例中,我们将一个输入字符串’ tutorialspoint ‘中的字符随机转换为大写。
方法1:使用join()、choice()、lower和upper函数
lower - 将字符串中的所有大写字符转换为小写字符。
random.choice() 函数(从一个序列如列表、元组、数字范围中随机选择一个项)。
upper - 将字符串中的所有小写字符转换为大写字符。
join() - join()是Python中的一个字符串函数,用于将由字符串分隔的序列元素连接起来。该函数连接序列元素以转换为字符串。
步骤
以下是执行所需任务的算法/步骤:
- 使用import关键字从random模块中导入 choice 函数。
-
创建一个变量来存储输入字符串。
-
打印输入字符串。
-
遍历输入字符串的每个字符,并使用random.choice()随机选择大写或小写字符。这里使用join来转换为字符串。
-
打印将输入字符串的字符随机转换为大写后的结果字符串。
示例
以下程序通过使用join()、random.choice()、lower和upper函数,将输入字符串的字符随机转换为大写,返回一个字符串 –
# importing choice from the random module
from random import choice
# input string
inputString = 'tutorialspoint'
# printing input string
print("Input String:", inputString)
# traversing through each character of a string and selecting
# either upper or lowercase char randomly using choice()
# here join is used to convert to a string
randchars_str = ''.join(choice((str.upper, str.lower))(char) for char in inputString)
# printing resultant string after converting chars lower or uppercase randomly
print("String after converting chars lower or uppercase randomly:\n", randchars_str)
输出
在执行上述程序时,将会生成以下输出结果 –
Input String: tutorialspoint
String after converting chars lower or uppercase randomly:
tUTORIAlSPOInT
方法2:使用random.randInt()和random.sample()函数
random. randint() 方法:返回指定范围内的一个随机数。
random.sample() 方法:从序列中随机选择指定数量的元素,并返回一个列表。
语法
random.sample(sequence, k)
步骤
以下是执行所需任务的算法/步骤:
- 使用list()函数将给定的输入字符串转换为列表。
-
使用 random.randInt() 函数计算需要转换为大写字母的随机索引的数量。
-
通过将列表长度和所需元素数量作为参数传递给 random.sample() 函数,获取上述n个随机元素(从0到列表长度)。
-
将上述索引保存到一个列表中,称为randomIndexList。
-
通过for循环遍历上述 randomIndexList 。
-
使用upper()函数将该索引处的字符串元素转换为大写。
-
使用 join() 函数将所有列表元素连接并转换为字符串。
-
打印结果。
示例
以下程序在随机情况下将输入字符串的字符转换为大写后返回一个字符串。
import random
# input string
inputString = 'tutorialspoint'
# printing input string
print("Input String:", inputString)
# Converting string to list
stringList = list(inputString)
# Getting the number of random indexes to be modified to upper case
n = random.randint(0, len(stringList)-1)
# Getting above n number of random elements from 0 to the length of the list
randomIndexList = random.sample(range(0, len(stringList)-1), n)
# Traversing the above index list
for index in randomIndexList:
# Converting the corresponding index string element to the upper case
stringList[index] = stringList[index].upper()
# Joining all the list elements and Converting to string
result = ''.join(stringList)
# printing resultant string after converting chars lower or uppercase randomly
print("String after converting chars lower or uppercase randomly:\n", result)
输出
执行上述程序时,将生成以下输出:
Input String: tutorialspoint
String after converting chars lower or uppercase randomly:
tUToriaLsPOINT
方法3:使用map()、choice()和zip()函数
random.choice() 函数(随机从列表、元组、数字范围等序列中选择一个项)。
random.choice(sequence)
zip() 函数用于合并两个列表/迭代器。
步骤
以下是执行所需任务的算法/步骤-
- 使用import关键字从random模块中导入 choice 函数。
-
使用zip函数对字符串的小写和大写字符进行合并,并使用random.choice()方法从中选择任意一个。
-
使用map()函数将此应用于字符串的所有元素。
-
使用join()函数将此map对象转换为字符串。
-
将输入字符串的字符随机转换为大写后打印结果字符串。
示例
以下程序使用map()、random.choice()和zip()函数将输入字符串的字符随机转换为大写,并返回一个字符串-
# importing choice from the random module
from random import choice
# input string
inputString = 'tutorialspoint'
print("Input String:", inputString)
# extending logic to each character using a map,
# and selecting upper or lower for each character
randchars_str = ''.join(map(choice, zip(inputString.lower(), inputString.upper())))
# printing resultant string after converting chars lower or uppercase randomly
print("String after converting chars lower or uppercase randomly:\n", randchars_str)
输出
运行以上程序将会生成以下输出:
Input String: tutorialspoint
String after converting chars lower or uppercase randomly:
TutoRIaLsPoInt
结论
在本文中,我们学习了如何使用三种不同的方法将字符串中的随机大写字母转换。我们还学习了如何使用randInt()生成随机整数,使用sample()生成一个包含n个随机数的列表,以及使用choice()随机选择一个项目。