如果名称具有_123
或_abc_0
或_abc_1
,其中_abc_#
,则需要附加# is any number of digits
。如何在if
条件下编写它?
name = "name_abc_0_any_chars"
if "_abc_<#any digit>" in name: #not sure what to write in place of <#any digit>
name = name + "_123"
print "name: ", name
输出:
name: name_abc_0_any_chars_123
答案 0 :(得分:0)
对于不使用正则表达式的解决方案,可以使用any()
函数。例如
a = ['_abc_0', '_abc_1', '_abc_2', '_abc_3', '_abc_4', '_abc_5', '_abc_6', '_abc_7', '_abc_8', '_abc_9']
name = "name_abc_34_other_characters"
if any(x in name for x in a):
name += "_123"
print("name: ", name)
输出:
name: name_abc_34_other_characters_123
答案 1 :(得分:0)
已编辑
如果要测试变量是否包含_abc_#d
,请使用re
:
import re
name = "name_abc_0_any_chars"
if re.findall('abc_\d+', name):
name += '_123'
输出:
'name_abc_0_any_chars_123'