元组索引和打印

Tuple indexing and printing

Python 初学者,在将元组作为列表使用时对元组有点困惑。我有下面的代码,根据我的理解,peek 函数应该 return 第一个元组对,但实际上它 return 只是该对的第一个单词。为什么是这样??

提前谢谢大家。

tuples = [('big', 'apple'), ('small', 'orange'), ('medium', 'berry')]

def peek(word_list):
    if word_list:
        word = word_list[0]
        return word[0]
    else:
        return None




peek(tuples) #prints big

print tuples[0] #prints ('big', 'apple')
word = word_list[0]      # first tuple
print word[0]            # first entry of the first tuple

您有两个 [0] 取消引用。这段代码相当于

print word_list[0][0]    # first entry of the first tuple

摆脱其中一个。

word = word_list[0]      # first tuple
print word               # first tuple

试试看:

word_list = [('big', 'apple'), ('small', 'orange'), ('medium', 'berry')]
word = word_list[0]
print(word)
print(word[0])

在 peek 函数中,替换

print word[0]

print word

因为 word[0] 实际上是 word_list[0][0],它是第一个元组中的第一个元素,即 "big"。简而言之,将 "tuples" 视为 2*3 数组。