1

以下を考えると:

list = [('[', "'Conrad Clifton'"), ('[', "'Rippa'")]

フォームでリストを取得するにはどうすればよいですか

[('Conrad Clifton', 'Rippa')]

次のようなもの:

new_list = []
for first, second in list:
    new_list.append(second)

そして、リストをタプルに変換します。リスト内包表記でこれを行う方法はありますか?

4

4 に答える 4

5
>>> tuple(second for first, second in li)
("'Conrad Clifton'", "'Rippa'")

また、リストに という名前を付けないでくださいlist。ビルトインタイプです。変数に組み込みの名前を付けないでください。

于 2013-02-10T23:28:05.750 に答える
3

別の解決策(python 2.x):

>>> x = [('[', "'Conrad Clifton'"), ('[', "'Rippa'")]
>>> zip(*x)[1]
("'Conrad Clifton'", "'Rippa'")

変数名として使用することは避けてくださいlist。組み込みの名前が影になります。

于 2013-02-10T23:34:01.493 に答える
3
your_output = tuple(y for x,y in your_input)
于 2013-02-10T23:27:44.057 に答える
0

次を使用することもできますoperator.itemgetter

>>> import operator
>>> l = [('[', "'Conrad Clifton'"), ('[', "'Rippa'")]
>>> map(operator.itemgetter(1), l)
    ["'Conrad Clifton'", "'Rippa'"]
于 2013-02-10T23:37:43.817 に答える