我很好奇为什么我们能做到这一点:
l = [1,2,3,4]
但尝试此操作时出错:
l = list(1,2,3,4)
此外,正如大多数人通常所说的那样,尽管将后者的论点作为元组解决问题,为什么这也不起作用?
t = tuple(1,2,3,4)
答案 0 :(得分:4)
<IMG SRC="javascript.png">
和list()
分别用于将不同类型的对象转换为列表或元组。任何可迭代都会在那里。这两个函数并非用于从谨慎的输入数量创建对象,这就是文字符号的用途。
因此,如果您有固定数量的元素,每个元素都可以使用表达式生成,那么创建列表的正确方法是使用tuple()
文字语法。如果由单个可迭代对象生成可变数量的元素,请使用[...]
。这两个用例不同。
如果list()
接受了多个参数,那么您将不再需要list()
语法;没有必要让两个不同的语法填充相同的用例。