Python|字符串中的选择性大小写
有时,在使用Python时,我们可能会遇到需要对字符串中的某些字符进行大小写更改的问题。这种问题可能出现在许多类型的应用程序中。让我们讨论一些可以解决这个问题的方法。
方法 #1:使用enumerate() + loop + upper()
可以使用上述功能集来解决此问题。这是执行此任务的蛮力方式,在此我们遍历字符串中的每个元素,如果它存在于大小写更改列表中,则将其更改为大写。
# Python3 code to demonstrate working of
# Selective casing in String
# using loop + upper() + enumerate()
# initialize string
test_str = 'gfg is best'
# printing original string
print("The original string : " + str(test_str))
# initialize change case list
chg_list = ['g', 'f', 's']
# Selective casing in String
# using loop + upper() + enumerate()
res = list(test_str)
for idx, char in enumerate(res):
if char in chg_list:
res[idx] = char.upper()
# printing result
print("String after Selective casing : " + str(''.join(res)))
输出 :
The original string : gfg is best
String after Selective casing : GFG iS beSt
&nsbp;
方法#2:使用列表推导 + upper() + join()
这是可以解决此问题的速记版本。在此,我们以与上述方法类似的方式执行类似的任务,但使用列表理解以单线方式执行。
# Python3 code to demonstrate working of
# Selective casing in String
# using list comprehension + upper() + join()
# initialize string
test_str = 'gfg is best'
# printing original string
print("The original string : " + str(test_str))
# initialize change case list
chg_list = ['g', 'f', 's']
# Selective casing in String
# using list comprehension + upper() + join()
res = ''.join([char.upper() if char in chg_list
else char for char in test_str])
# printing result
print("String after Selective casing : " + str(''.join(res)))
输出 :
The original string : gfg is best
String after Selective casing : GFG iS beSt