我对Python 3很新鲜。当我学习元组时,我在书中找到了这段代码。
txt = 'but sort what light in yonder window breaks'
words = txt.split()
t = list()
for word in words:
t.append((len(word),word))
t.sort(reverse = True)
res = list()
for length, word in t:
res.append(word)
print(res)
我对此代码有两个问题。首先,这本书说:
第一个循环构建一个元组列表,其中每个元组都是一个以其长度开头的单词。
第一个循环是如何创建元组列表的?从教程中,我学到了元组,如下所示。
t = ('a',)
t = 'a', 'b', 'c'
t = tuple()
第二个问题是为什么append()可以带两个参数?
t.append((len(word),word))
答案 0 :(得分:0)
append
没有获得两个参数,它会得到一个tuple
,正如您在教程元组中看到的(var_1, var_2)
一样,所以在此示例len(word)
中word
是两个元组变量,因此t
是元组列表。
答案 1 :(得分:0)
append()
如果仔细看的话,这里只有1个参数。该参数恰好是由2个元素组成的元组。