如何访问配对列表中对的每个元素?

imp*_*ble 24 python tuples list

我有一个名为pair的列表.

pairs = [("a", 1), ("b", 2), ("c", 3)]
Run Code Online (Sandbox Code Playgroud)

我可以访问元素:

for x in pairs:
    print x
Run Code Online (Sandbox Code Playgroud)

它给出了如下输出:

('a', 1) ('b', 2) ('c', 3)
Run Code Online (Sandbox Code Playgroud)

但我想访问每对中的每个元素,如在c ++中,如果我们使用,pair<string, int> 我们可以访问,第一个元素和第二个元素x.first,和x.second.eg.

x = make_pair("a",1)
x.first= 'a'
x.second= 1
Run Code Online (Sandbox Code Playgroud)

我怎么能在python中做同样的事情?

ale*_*cxe 31

使用元组解包:

>>> pairs = [("a", 1), ("b", 2), ("c", 3)]
>>> for a, b in pairs:
...    print a, b
... 
a 1
b 2
c 3
Run Code Online (Sandbox Code Playgroud)

另请参阅:元组在for循环中解压缩.


Hug*_*ell 9

如果要使用名称,请尝试使用namedtuple:

from collections import namedtuple

Pair = namedtuple("Pair", ["first", "second"])

pairs = [Pair("a", 1), Pair("b", 2), Pair("c", 3)]

for pair in pairs:
    print("First = {}, second = {}".format(pair.first, pair.second))
Run Code Online (Sandbox Code Playgroud)


Jay*_*hik 7

A 2-tuple是一对.您可以像这样访问第一个和第二个元素:

x = tuple('a', 1) # make a pair
x[0] # access 'a'
x[1] # access 1
Run Code Online (Sandbox Code Playgroud)