python報錯 ValueError: dictionary update sequence element #0 has length 1; 2 is require

原文鏈接地址:
https://blog.csdn.net/weixin_40894428/article/details/80683137
字符串轉字典要用eval(),這個方法很多書上都沒有介紹,
有關eval()的用法,傳送門:
http://www.runoob.com/python/python-func-eval.html

另外我的是比較基礎的:

>>> ss = ['a','bc','def']
>>> dict(ss)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: dictionary update sequence element #0 has length 1; 2 is required
>>> eval(ss)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: eval() arg 1 must be a string, bytes or code object
>>>
>>> ss = ['aa','bc','def']
>>> dict(ss)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: dictionary update sequence element #2 has length 3; 2 is required
>>> ss = ['a','bc','de']
>>> dict(ss)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: dictionary update sequence element #0 has length 1; 2 is required
>>> ss = ['aa','bc','de']#改爲2個字符就好啦!
>>> dict(ss)
{'a': 'a', 'b': 'c', 'd': 'e'}
>>> ss = ['awed','webc','wede']
>>> dict(ss)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: dictionary update sequence element #0 has length 4; 2 is required
>>>

這個僅僅是因爲,需要轉換的字符串不是2位!
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章