次のようにフォーマットされたnumberseriesの長いリストがあります。
["4450[0-9]", "6148[0-9][0-9]"]
これらのシリーズの1つから単一の数字でリストを作成したい:
[44500,44501,..., 44509]
元のリスト内の多くのシリーズでこれを行う必要がありますが、それを行うための最良の方法は何ですか?
次のようにフォーマットされたnumberseriesの長いリストがあります。
["4450[0-9]", "6148[0-9][0-9]"]
これらのシリーズの1つから単一の数字でリストを作成したい:
[44500,44501,..., 44509]
元のリスト内の多くのシリーズでこれを行う必要がありますが、それを行うための最良の方法は何ですか?
私が望むことをしているように見えるこのモジュールを見つけました。
https://pypi.python.org/pypi/braceexpand/0.1.1
>>> from braceexpand import braceexpand
>>> s = "1[0-2]"
>>> ss = "1[0-2][0-9]"
>>> list(braceexpand(s.replace("[", "{").replace("-","..").replace("]","}")))
['10', '11', '12']
>>> list(braceexpand(ss.replace("[", "{").replace("-","..").replace("]","}")))
['100', '101', '102', '103', '104', '105', '106', '107', '108', '109', '110', '111', '112', '113', '114', '115', '116', '117', '118', '119', '120', '121', '122', '123', '124', '125', '126', '127', '128', '129']
alecxeの答えはまだ「最良の」答えであり、近道ではありません