Python 常见错误

ValueError: too many values to unpack

这种错误是指一个 tuple 值赋给一个 tuple 变量时,变量个数不够造成的。如:

a, b = (1, 2, 3)

RuntimeError: dictionary changed size during iteration

https://stackoverflow.com/questions/11941817/how-to-avoid-runtimeerror-dictionary-changed-size-during-iteration-error/11941855#11941855

d = {'a': [1], 'b': [1, 2], 'c': [], 'd':[]}
for i in d:
    if not d[i]:
        d.pop(i)

Traceback (most recent call last):
  File "F:/python/testtwisted/test/t.py", line 6, in <module>
    for i in d:
RuntimeError: dictionary changed size during iteration

Python 2.x:

for i in d.keys():

Python 3.x:

Python 3.x 中 keys 返回一个迭代器而不是列表,所以不能使用 keys 方法。可以使用 list 来强制生成 key 的副本。

for i in list(d):

json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)

import json
string = "{'lat': 61.190495, 'lng': -149.86884}"
dic = json.loads(string)

报错,类型的错误,就是由于JSON中,标准语法中,不支持单引号,属性或者属性值,都必须是双引号括起来的。

import json
string = '{"lat": 61.190495, "lng": -149.86884}'
dic = json.loads(string)

TypeError: not enough arguments for format string

后面给的参数,不能是 set,要是元组或列表的形式


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 bin07280@qq.com

文章标题:Python 常见错误

文章字数:298

本文作者:Bin

发布时间:2018-09-13, 16:06:22

最后更新:2019-08-06, 00:07:35

原始链接:http://coolview.github.io/2018/09/13/Python/Python%20%E5%B8%B8%E8%A7%81%E9%94%99%E8%AF%AF/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录