Python中,dict(((1,2),(2,3)))可以,为啥dict((1,2))会报错呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中,dict(((1,2),(2,3)))可以,为啥dict((1,2))会报错呢?相关的知识,希望对你有一定的参考价值。

TypeError : cannot convert di.ctionary update seque nceelement#Oto a sequence

答案:因为dict((1,2))中的参数(1,2)的第一个元素1是不可迭代的,所以报错。具体分析如下:

    dict()的机制如下

报错的原因在于列表的第一项中只有一个元素,并且不可迭代。也就无法拆包。对应于dict((1,2))中的参数是(1,2),这个参数的第一个元素是整数1,是不可迭代的,所以报错。

参考技术A dict((1,2),(1,2))
dict(1,2)
你把括号换一下你就明白了。
dict()括号内只能有一个参数,要把所有的键值对括起来追问

可是(1,2)不是一个元组吗?这应该是一个参数吧,((1,2),(2,3))都能算一个参数啊

可是(1,2)不是一个元组吗?这应该是一个参数吧,((1,2),(2,3))都能算一个参数啊

Python中dict的使用

Python中dict的使用

keys() # 获取所有键 返回的是dict_keys 类型
values() # 获取所有值 返回的是 dict_values 类型
b=a.copy() #  返回一个副本 等价于b = a
a.clear()  # 清空
a.items()  # 将dict 封装成由元组组成的列表
a.pop("name")   # 删除 key 为name 的键值对

以上是关于Python中,dict(((1,2),(2,3)))可以,为啥dict((1,2))会报错呢?的主要内容,如果未能解决你的问题,请参考以下文章

Python - 字典(dict)删除元素

python 合并字典/拼接字典

python 两个字典合并

Python - 字典(dict)删除元素

Python - 字典(dict)删除元素

python--dict方法总结