【发布时间】:2021-02-25 21:33:04
【问题描述】:
我有一个大型数据集,其中包含多行通配符字符串,例如
8145[012]
8146[01234]
8147[0134567]
我想要一种有效的方法将这些扩展为每个组合的唯一行,例如
81450
81451
81452
81460
81461
81462
etc...
在 Python 3.7 中最有效的方法是什么?
【问题讨论】:
标签: python unix wildcard glob fnmatch
我有一个大型数据集,其中包含多行通配符字符串,例如
8145[012]
8146[01234]
8147[0134567]
我想要一种有效的方法将这些扩展为每个组合的唯一行,例如
81450
81451
81452
81460
81461
81462
etc...
在 Python 3.7 中最有效的方法是什么?
【问题讨论】:
标签: python unix wildcard glob fnmatch
使用正则表达式解析通配符,然后迭代:
import re
data = ['8145[012]', '8146[01234]', '8147[0134567]']
for wildcard in data:
base, combos = re.search(r'(\d+)\[(\d+)\]', wildcard).groups()
for combo in combos:
print(base + combo)
输出:
81450
81451
81452
81460
81461
81462
81463
81464
81470
81471
81473
81474
81475
81476
81477
【讨论】: