gpt4 book ai didi

python如何将字符串中的某些字符大写

转载 作者:行者123 更新时间:2023-11-28 19:32:36 25 4
gpt4 key购买 nike

这是我想做但不起作用的:

mystring = "hello world"
toUpper = ['a', 'e', 'i', 'o', 'u', 'y']
array = list(mystring)

for c in array:
if c in toUpper:
c = c.upper()
print(array)

"e""o" 在我的数组中不是大写。

最佳答案

您可以使用 str.translate() method让 Python 在一步中用其他字符替换字符。

使用 string.maketrans() function将小写字符映射到大写目标:

try:
# Python 2
from string import maketrans
except ImportError:
# Python 3 made maketrans a static method
maketrans = str.maketrans

vowels = 'aeiouy'
upper_map = maketrans(vowels, vowels.upper())
mystring.translate(upper_map)

这是替换字符串中某些字符的更快、更“正确”的方法;您始终可以将 mystring.translate() 的结果转换为列表,但我强烈怀疑您首先想要以字符串结尾。

演示:

>>> try:
... # Python 2
... from string import maketrans
... except ImportError:
... # Python 3 made maketrans a static method
... maketrans = str.maketrans
...
>>> vowels = 'aeiouy'
>>> upper_map = maketrans(vowels, vowels.upper())
>>> mystring = "hello world"
>>> mystring.translate(upper_map)
'hEllO wOrld'

关于python如何将字符串中的某些字符大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29308410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com