python 条件格式替换
python conditional formatting replace
我有一个 table,其中包含当前月份和接下来 24 个月的列名:
即 col_tier1、col_tier1_mo1、col_tier_mo2...col_tier_mo24
我有一个列表,我正在为更新格式化其中 col_tier1_mo1 = col_tier1, col_tier2_mo = col_tier1_mo ....
在没有 "mo_"
的第一行获取正确格式时遇到问题
cols24mo_tiers = [
"col_tier1",
"col_tier2"
]
格式化字符串
for col_prefix in cols24mo_tiers:
monthly_cols.extend(["{0}{1} = {0}{2}".format(col_prefix, str(i+1), str(i) if i > 0 else '') for i in range(24)])
以为我可以做这样的事情,但 python 不喜欢
for col_prefix in cols24mo_tiers:
monthly_cols.extend(["{0}{1} = {0}{2}".format(if i > 0 col_prefix+"mo_" else col_prefix, str(i+1), str(i) if i > 0 else '') for i in range(24)])
你差不多明白了,但是你把参数列表中第一个 if
的顺序弄错了 .format
。你有 if i > 0 col_prefix+"mo_" else col_prefix
而它应该是 col_prefix+"mo_" if i > 0 else col_prefix
(对于后来的 if
和 str(i)
,你是正确的)。那么整个块应该是
for col_prefix in cols24mo_tiers:
monthly_cols.extend(["{0}{1} = {0}{2}".format(col_prefix + "mo_" if i > 0 else col_prefix, str(i+1), str(i) if i > 0 else '') for i in range(24)])
我有一个 table,其中包含当前月份和接下来 24 个月的列名: 即 col_tier1、col_tier1_mo1、col_tier_mo2...col_tier_mo24
我有一个列表,我正在为更新格式化其中 col_tier1_mo1 = col_tier1, col_tier2_mo = col_tier1_mo ....
在没有 "mo_"
的第一行获取正确格式时遇到问题cols24mo_tiers = [
"col_tier1",
"col_tier2"
]
格式化字符串
for col_prefix in cols24mo_tiers:
monthly_cols.extend(["{0}{1} = {0}{2}".format(col_prefix, str(i+1), str(i) if i > 0 else '') for i in range(24)])
以为我可以做这样的事情,但 python 不喜欢
for col_prefix in cols24mo_tiers:
monthly_cols.extend(["{0}{1} = {0}{2}".format(if i > 0 col_prefix+"mo_" else col_prefix, str(i+1), str(i) if i > 0 else '') for i in range(24)])
你差不多明白了,但是你把参数列表中第一个 if
的顺序弄错了 .format
。你有 if i > 0 col_prefix+"mo_" else col_prefix
而它应该是 col_prefix+"mo_" if i > 0 else col_prefix
(对于后来的 if
和 str(i)
,你是正确的)。那么整个块应该是
for col_prefix in cols24mo_tiers:
monthly_cols.extend(["{0}{1} = {0}{2}".format(col_prefix + "mo_" if i > 0 else col_prefix, str(i+1), str(i) if i > 0 else '') for i in range(24)])