对于大多数人来说,这可能是一个基本问题,但我无法通过Google搜索找到任何具体信息,也不会在之前提出的任何问题中找到:
我想知道是否可以使用 .append 将几个项目附加到已包含一个项目的列表中,然后使用len()
获取所有项目的数字输出。当我按如下方式输入我的代码时:
bag.append('suit', 'shoes', 'socks')
我收到以下错误:
TypeError: append() takes exactly one argument (3 given)
我尝试过如下双括号:
bag.append(('suit', 'shoes', 'socks))
但这会导致len(bag)
告诉我bag
中只有2个项目(即原始版本和(suit, shoes, socks)
。目标数字为4(即原始项目+西装+鞋子+袜子)。
我使用过的唯一成功完成此操作的方法如下:
bag.append('suit')
bag.append('shoes')
bag.append('socks')
当对此运行len(bag)
时,我会分别为4个项目获得正确的输出,即 4 (原始项目 bag = [手套] + < strong>'适合' + '鞋子' + '袜子'。
答案 0 :(得分:5)
答案 1 :(得分:2)
正如TypeError
所说,append方法输入只是一个项目,因此任何尝试在同一个呼叫上附加多个项目都将失败。
bag.append(('suit', 'shoes', 'socks))
未失败的原因是('suit', 'shoes', 'socks)
是一种项目类型tuple。
使用此处建议的extend
方法或+
运算符。
答案 2 :(得分:1)
您可以使用+
运算符
>>> l = ['hat', 'coat']
>>> x = l + ['suit', 'shoes', 'socks']
>>> x
['hat', 'coat', 'suit', 'shoes', 'socks']