在python中将名称大写

时间:2018-11-27 14:18:06

标签: python regex python-3.x

是否可以输入句子str并将其所有名称都大写?

test_str = 'bitcoin is not dead and ethereum is cool'

我希望将其转换为

test_str = 'Bitcoin is not dead and Ethereum is cool'

这可能吗?我的第一个想法是使用re模块定位名称,然后对其进行修改,但随后意识到这些名称似乎没有特定的模式。

2 个答案:

答案 0 :(得分:2)

如果您有一个要大写的单词列表,可以按照以下步骤操作:

names = ['bitcoin', 'ethereum']
test_str = 'bitcoin is not dead and ethereum is cool'
output_str = ' '.join([word.capitalize() if word in names else word for word in test_str.split()])

>>> 'Bitcoin is not dead and Ethereum is cool'

答案 1 :(得分:0)

如果有一个要大写的单词列表,则可以使用列表来完成。

test_str='bitcoin is not dead and ethereum is cool'
capitalized_words=['bitcoin','ethereum']
for i in range(capitalized_words):
    test_str = test_str.replace(capitalized_words[i],capitalized_words[i].capitalize())