私はそのような文字列のリストを持っています
['aaa','bbb','ccc']
このようなタプルのリストに変換する必要があります。
[('aaa',),('bbb',),('ccc',)]
タプル関数をリストの各要素に適用しようとすると、文字列が分割され、次のようなものが返されます
('a','a','a')
この問題を回避する方法はありますか?
タプル関数は文字列をシーケンスとして受け取り、文字を分解するため、適用しないでください。次のように、リスト内包tuple
表記を使用して手動でビルドするだけです。
>>> l = ['aaa','bbb','ccc']
>>> [(elem,) for elem in l]
[('aaa',), ('bbb',), ('ccc',)]
>>> l = ['aaa', 'bbb', 'ccc']
>>> print [(i,) for i in l]
[('aaa',), ('bbb',), ('ccc',)]
あなたがする必要があるのは、各要素をそれ自身の1つのタプルに入れることだけです。