私はこのようなものを使用して文字列を取得し、それを分解してリストに追加してきました
example_string = "Test"
example_list =[]
for x in example_string:
example_list.append(x)
出力:
example_list = ['T','e','s','t']
これを行うためのより直接的な方法はありますか?
あなたはより良い何かを意味します:
example_string = "Test"
example_list = list(example_string)
Ouput:
example_list = ["T","e","s","t"]
Pythonでは、文字列はリストやタプルのように反復可能であり、またはを呼び出すことで、文字列をタプルまたはリストに簡単に変換できtuple()
ますlist()
。
リストアイテムごとに3文字をグループ化する場合(@Cedricの回答に対するコメントに従って)、これはドキュメントgrouper
のレシピです。itertools
def grouper(n, iterable, fillvalue=None):
"Collect data into fixed-length chunks or blocks"
# grouper(3, 'ABCDEFG', 'x') --> ABC DEF Gxx
args = [iter(iterable)] * n
return izip_longest(fillvalue=fillvalue, *args)
izip_longest
(から関数をインポートする必要がありますitertools
。)
N個のグループ(外部モジュールなし)にグループ化するには、zip形式のレシピを使用できます。zip(*[iter(s)]*n)
それで:
>>> list(zip(*[iter("longerstring")]*3))
[('l', 'o', 'n'), ('g', 'e', 'r'), ('s', 't', 'r'), ('i', 'n', 'g')]