学Python编程

Python常见错误实例, 错误信息及其翻译
概要 本页含三部分: 1. Python常见错误实例, 及其中文翻译; 2. 从Python软件源代码中挖掘出来的错误信息及其中文翻译 (请注意下面有关于 占位者 的说明); 3. Python 异常错误描述及其中文翻译; 1. Python常见错误实例, 及其中文翻译 SyntaxError 语法错误 -- 很常见的一种错误 >>> print "hello" SyntaxError: Missing parentheses in call to 'print'. Did you mean print("hello")? 语法错误: 当你调用print函数时你缺少了括号。 你是不是原来是要写成: print("hello")? #注释: SyntaxError = Syntax (中文意思: 语法) + Error (中文意思: 错误), 所以 SyntaxError 中文意思就是语法错误。 #注释: Syntax 中文读音大概是: 新它克斯 #注释: Error 中文读音大概是: 儿若饿 TypeError 类型错误 -- 此错误也很常见 >>> '2'+2 Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#23>", line 1, in <module> 文件 "<pyshell#23>", 第 1 行, 在 <模块> 中 '2'+2 你试图在算 '2'+2 TypeError: must be str, not int 类型错误: 你必须用str(即字符串), 而不能用整数 ValueError 不恰当数值错误 >>> int('xyz') Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#14>", line 1, in <module> 文件 "<pyshell#14>", 第 1 行, 在 <模块> 中 int('xyz') 你试图调用int('xyz')函数 ValueError: invalid literal for int() with base 10: 'xyz' 不恰当数值错误: 当调用以10为底的int()函数是, 你用了非法的字符 NameError 名字错误 >>> age Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#6>", line 1, in <module> 文件 "<pyshell#16>", 第 1 行, 在 <模块> 中 age 你试图用 age 这一名字 NameError: name 'age' is not defined 名字错误: 名字 ‘age' 没有定义。 ZeroDivisionError 被零除错误 >>> x=100/0 Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#8>", line 1, in <module> 文件 "<pyshell#8>", 第 1 行, 在 <模块> 中 x=100/0 你试图在算 100/0 ZeroDivisionError: division by zero 被零除错误: 被零除 IndexError 索引错误 >>> L1=[1,2,3] >>> L1[3] Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#18>", line 1, in <module> 文件 "<pyshell#18>", 第 1 行, 在 <模块> 中 L1[3] 你试图想要得到列表中的第三个元素, 但该列表总共只有三个元素, 所以最后一个元素序号是二 (从第零号算起, 不是从第一号算起) IndexError: list index out of range 索引错误: 链表的索引下标数超出了界限。 #注释: Index 中文读音大概是: 因迭克斯 ModuleNotFoundError 模块找不到错误 >>> import notamodule Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#10>", line 1, in <module> 文件 "<pyshell#10>", 第 1 行, 在 <模块> 中 import notamodule 你试图想要输进 notamodule 这么一个模块 ModuleNotFoundError: No module named 'notamodule' 模块找不到错误: 不存在一个叫 ‘‘notamodule’ 的模块 KeyError 词典关键词错误 >>> D1={'1':"aa", '2':"bb", '3':"cc"} >>> D1['4'] Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#15>", line 1, in <module> 文件 "<pyshell#15>", 第 1 行, 在 <模块> 中 D1['4'] 你试图想要用4作为词典的关键词去读取词典中的值 KeyError: '4' 词典关键词错误: 你的词典中不存在关键词: 4 ImportError 模块输入错误 >>> from math import cube Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#16>", line 1, in <module> 文件 "<pyshell#16>", 第 1 行, 在 <模块> 中 from math import cube 你试图想要从math模块中输进cube名字 ImportError: cannot import name 'cube' 模块输入错误: 不能输入一个叫 ’cube’名字 StopIteration 停止迭代 >>> it=iter([1,2,3]) >>> next(it) 1 >>> next(it) 2 >>> next(it) 3 >>> next(it) Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#23>", line 1, in <module> 文件 "<pyshell#23>", 第 1 行, 在 <模块> 中 next(it) 你试图调用next(it)函数 StopIteration 停止迭代 KeyboardInterrupt 键盘中断 >>> name=input('enter your name') enter your name^c Traceback (most recent call last): 往回跟踪 (上一次最近的函数调用): File "<pyshell#9>", line 1, in <module> 文件 "<pyshell#8>", 第 1 行, 在 <模块> 中 name=input('enter your name') 你试图想从用户那里得到一个输入, 但用户强行中断 KeyboardInterrupt 键盘中断
2. 从Python软件源代码中挖掘出来的错误信息及其中文翻译
如下错误信息中, 你会看到有很多的占位者, 如<c> 或 <pt_name>, 这些占位者东西只是占位者, 占位者的标记是它们都被用角括号括了起来。 Python根据你所写的程序语句, 会把这些占位者替换成合适的数值或字符串, 以指示你所犯的错误。 由于这些占位者的存在, 当你试图搜索这里的一些错误信息时, 你有可能找不到。 怎么办? 搜索时不要使用太长的字符串去搜索, 设法避开对应于占位者的具体字符。 比如说: invalid character '<c>' (U+<hex>) 非法字符 '<c>' (U+<hex>) 这里 <c> 和 <hex> 都是占位者。 实例如下: 比如说, 你试图用中文的双引号, 而不是西方的双引号来表示字符串时, 你就会得到错误。 比如说打入: print(“简单”)
这时它就说出错了:
SyntaxError: invalid character '“' (U+201C) 中文的意思就是: 语法错误: 非法的字符 '“' (U+201C) 你可以看到以上错误信息中的占位者 <c> 就被Python编译器替换成了“, 占位者<hex>就被替换成了 U+201C 你可以看到Python用浅红色帮你指出了你错误的大概的位置。
SyntaxError 语法错误 ------------------------------------------------------- From tokenizer.c 源自 tokenizer.c encoding problem: <cs> 编码问题: <cs> encoding problem: <cs> with BOM 编码问题: 与字节顺序标记有关的<cs> Non-UTF-8 code starting with '\\x<badchar>' in file <filename> on line <lineno>, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details 非UTF-8 码 开头的 '\\x<坏字符>', 存在于文件 <文件名>, 行 <行号>, 但你却未声明编码, 详情请见: http://python.org/dev/peps/pep-0263/ invalid character '<c>' (U+<hex>) 非法字符 '<c>' (U+<hex>) invalid non-printable character U+<hex> 非法不可打印的字符 U+<hex> invalid decimal literal 非法十进制数字字符 invalid hexadecimal literal 非法十六进制数字字符 invalid digit '<c>' in octal literal 八进制文字中有非法的数字'<c>' invalid octal literal 非法八进制数字字符 invalid digit '<c>' in binary literal 二进制文字中有非法的数字'<c>' invalid binary literal 非法二进制数字字符 leading zeros in decimal integer literals are not permitted; use an 0o prefix for octal integers 十进制整数数字字符串中的前面的0不被允许; 对八进制整数数字字符串, 请用0o前缀 too many nested parentheses 你嵌入了太多的括号 unmatched '<c>' 没有匹配的 '<c>' closing parenthesis '<c>' does not match opening parenthesis '<c>' on line <d> 右括号 '<c>' 不能与左括号 '<c>' 相匹配, 位于 行 <d> closing parenthesis '%c' does not match opening parenthesis '%c', c, opening); 右括号 '<c>' 不能与左括号 '<c>' 相匹配 ------------------------------------------------------- From exceptions.c 源自 exceptions.c Invalid syntax 非法语法 Improper indentation 不当缩进 Missing parentheses in call to 'print'. Did you mean print("hello") 当你调用print函数时你缺少了括号。 你是不是原来是要写成: print("hello")? Missing parentheses in call to 'exec' 当你调用exec函数时你缺少了括号 ------------------------------------------------------- From pegen.c 源自 pegen.c invalid token 非法字符 EOF while scanning triple-quoted string literal 扫描读进三重引号字符串时碰到了文件末尾 EOL while scanning string literal 扫描读进字符串时碰到了行的末尾 unexpected EOF while parsing 解析时碰到了意外的文件末尾 unindent does not match any outer indentation level 未缩进与外围的缩进层次不匹配 inconsistent use of tabs and spaces in indentation 缩进时, 不当地混合了空格和制表字符 too many levels of indentation 太多层次的缩进 unexpected character after line continuation character 在续行符之后碰到的意外的字符 ------------------------------------------------------- From symtable.c 源自 symtable.c name '<name>' is nonlocal and global 名字 '<名字>' 非局部, 也非全局 nonlocal declaration not allowed at module level 在模块层次上, 非局部声明不被允许。 no binding for nonlocal '<name>' found 未能找到 非局部 '<名字>'的绑定 maximum recursion depth exceeded during compilation 编译时, 超出了最大的递归深度 'yield' inside list comprehension 链表理解中的 ‘产生’ 'yield' inside set comprehension 集合理解中的 ‘产生’ 'yield' inside dict comprehension 词典理解中的 ‘产生’ 'yield' inside generator expression 产生器表达式中的 ‘产生’ ============================================================================================================================================================================================================================================== TypeError 类型错误 ------------------------------------------------------- From exceptions.c 源自 exceptions.c state is not a dictionary 状态不是词典 args may not be deleted 自变量不能被删除 __traceback__ may not be deleted __traceback__不能被删除 __traceback__ must be a traceback or None __traceback__必须是一traceback或空 __context__ may not be deleted __context__不能被删除 exception context must be None or derive from BaseException 异常上下文环境须是空或源自 BaseException __cause__ may not be deleted __cause__不能被删除 Inappropriate argument type 不当自变量类型 <name> attribute not set <名字> 属性没有设定 <name> attribute must be bytes <名字> 属性必须是字节 <name> attribute must be unicode <名字> 属性必须使用统一文字字符代码 ------------------------------------------------------- From getargs.c 源自 getargs.c <fname>() takes no arguments <函数名>() 不带自变量 <fname>() takes at least one argument <函数名>() 带至少一个自变量 <fname>() takes <%s> <%d> arguments (<zd> given) <函数名>() 带有一定数目的自变量 (但<这么多的个数> 给了)", expected <d> arguments, not <len> 需要 <这么多个> 自变量, 而不是 <那么多个> must be <d>-item sequence, not <len> 必须是 <这么多个>项 系列, 而不是 <那么多个> must be sequence of length <d>, not <zd> 系列必须是 <这么多个>项 , 而不是 <那么多个> is not retrievable 无法检索 <fname> <displayname> must be <expected>, not <tp_name> <函数名> <显示名> 必须是 <这样>, 而不是 <类名字> must be <expected>, not <tp_name> 必须是 <这样>, 而不是 <类名字> a byte string of length 1 字节字符串长度1 a unicode character 统一字符代码字符 (unknown parser marker combination) (未知解析器标记组合) buffer is NULL 缓存器为NULL (空) encoding failed 编码失败 str, bytes or bytearray 字符串, 字节或字节数组 (buffer_len is NULL 缓存器_长度为NULL (空) cleanup problem) 清理问题 encoded string without null bytes 被编码的字符串没有null(空)类型 invalid use of 'w' format character 非法使用 'w' 格式字符 read-write bytes-like object 读-写像字节的个体(对象) contiguous buffer 连续缓存器 impossible<bad format char> 不可能的<坏的格式字符> read-only bytes-like object 只读式像字节的个体(对象) bytes-like object 像字节的个体(对象) keywords must be strings 关键词必须是字符串 <fname>() takes at most <d> argument (<zd> given) <函数名>() 带有最多 <d> 数目的自变量 (<数> 给了) <fname>() takes no positional arguments <函数名>() 不带位置性质的自变量 <fname>() takes <m> <d> positional argument (<zd> given) <函数名>() 带有一定数目 <m> <d> 的位置性质的自变量 (<数> 给了) <fname>() missing required argument '<s>' (pos <d>) <函数名>() 缺少自变量 '<变量>' (位置 <d>) argument for <fname>() given by name ('<name>') and position (<d>) <函数名>() 的自变量名字 ('<名字>') 和 位置 (<位置数>) '<key>' is an invalid keyword argument for <fname>() 对<函数名>()而言, '<词>' 是一非法的关键词 Unmatched left paren in format string 格式字符串中左括号不匹配 <name> expected <s><zd> argument, got <zd> <名>() 需要有一定数目 <s> <d> 的自变量 但只有<这么多个> unpacked tuple should have <s><zd> elements, but has <zd> 解开包装的组元应有一定数目 <s> <d> 的元素, 但有<这么多个> <funcname> takes no keyword arguments <函数名>不带关键词自变量 ------------------------------------------------------- From typeobject.c 源自 typeobject.c can't set <tp_name>.<name> 不能设定 <类名>.<名> can't delete <tp_name>.<name> 不能删除 <类名>.<名> can only assign string to <tp_name>.__name__, not '<tp_name>' 只能把字符串赋值给<类名>.__name__, 而不是'<类名>' type name must not contain null characters 类型名不得含null字符 can only assign string to <tp_name>.__qualname__, not '<tp_name>' 只能把字符串赋值给<类名>.__qualname__, 而不是'<类名>' can only assign tuple to <tp_name>.__bases__, not <tp_name> 只能把组元赋值给<类名>.__bases, 而不是'<类名>' can only assign non-empty tuple to <tp_name>.__bases__, not () 只能把非空的组元赋值给<类名>.__bases, 而不是() <tp_name>.__bases__ must be tuple of classes, not '<tp_name>' <类名>.__bases必须是类的组元, 而不是<类名> a __bases__ item causes an inheritance cycle 一个__bases__ (基) 项目 造成继承环 type() takes 1 or 3 arguments type() 函数要 1 或 3 自变量 cannot create '<tp_name>' instances 没法创造 '<类名>' 例子 duplicate base class <x> 重复的基类 <x> duplicate base class 重复的基类 Cannot create a consistent method resolution order (MRO) for bases 不能对类创造类一个一致的成员函数决定次序 (MRO) Cannot extend an incomplete type '<tp_name>' 不能扩展一不全的'<类名>' mro() returned a non-class ('<tp_name>') mro() 函数返回一非类 ('<类名>') mro() returned base with unsuitable layout ('<tp_name>') mro() 函数返回一不合适的布局 ('<类名>') bases must be types 基类必须是类型 type '<tp_name>' is not an acceptable base type 类型'<类名>'不是一可接受的基类型 multiple bases have instance lay-out conflict 多基类具有例子布局冲突 this __dict__ descriptor does not support '<tp_name>' objects 此 __dict__ 描述不支持'<类名>'个体(对象) This object has no __dict__ 此个体(对象)无 __dict__ __dict__ must be set to a dictionary, not a '<tp_name>' __dict__必须设为一词典, 而非一'<类名>' This object has no __weakref__ 此个体(对象)无 __weakref___ __slots__ items must be strings, not '<tp_name>' __slots__项目必须是字符串, 而非'<类名>' __slots__ must be identifiers __slots__项目必须是标识符 type.__init__() takes no keyword arguments type.__init__() 不带关键词自变量 type.__init__() takes 1 or 3 arguments type.__init__() 函数要 1 或 3 自变量 metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases 元类冲突: 衍生类的元类必须是一 (不严格的)所有其母类的元类的子类 type() doesn't support MRO entry resolution; use types.new_class() type() 不支持 MRO 条目决定: 请用types.new_class() nonempty __slots__ not supported for subtype of '<tp_name>' 对'<类名>'的子类型而言, 非空 __slots__ 不被支持 __dict__ slot disallowed: we already got one __dict__ 位置不被允许: 我们已有一个了 __weakref__ slot disallowed: either we already got one, or __itemsize__ != 0 __weakref__位置不被允许: 要么我们已有一个, 要么 __itemsize__ 不为0 <R> in __slots__ conflicts with class variable <R> 在__slots__ 中于类变量冲突 type __qualname__ must be a str, not <tp_name> 类型 __qualname__ 必须是字符串, 而非<类名> __classcell__ must be a nonlocal cell, not <celltype> __classcell__ 必须是非局部的单元, 而非<单元类型> Type spec does not define the name field 类型规格不能定义名域 Type '<tp_name>' is not a heap type 类型'<类名>'不是一个堆类型 Type '<tp_name>' has no associated module 类型'<类名>'无相关的模块 No superclass of '<tp_name>' has the given module 任何一个'<类名>'的母类都没有给定的模块 attribute name must be string, not '<tp_name>' 属性名须字符串, 而非'<类名>' type object '<tp_name>' has no attribute 'name' 类型个体(对象) '<类名>' 无属性 ‘名’ can't set attributes of built-in/extension type '<tp_name>' 无法设定内设/扩展类型'<类名>'的属性 object.__init__() takes exactly one argument (the instance to initialize) object.__init__() 只有带一个自变量 (你想要初始化的那个例子) object.__new__() takes exactly one argument (the type to instantiate) object.__new__() 只有带一个自变量 (你想要初始化的那个例子) <tp_name>() takes no arguments <类名>() 不带任何自变量 Can't instantiate abstract class <tp_name> with abstract method<method_count> <joined> 没法为抽象的类<类名>使用抽象的类成员函数<method_count> <joined>创建一个例子 <attr> assignment: '<tp_name>' deallocator differs from '<tp_name>' <属性> 赋值: '<类名>'的解除分配与'<类名>'不同 <attr> assignment: '<tp_name>' object layout differs from '<tp_name>' <属性> 赋值: '<类名>'个体(对象)与'<类名>'不同 can't delete __class__ attribute 无法删除 __class__的属性 __class__ must be set to a class, not '<tp_name>' object __class__须被设为一类, 而非'<类名>'个体(对象) __class__ assignment only supported for heap types or ModuleType subclasses __class__的赋值只支持堆类型或模块类型子类 <tp_name>.__slotnames__ should be a list or None, not <tp_name> <类名>.__slotnames__ 应该是一列表或空, 而非<类名> copyreg._slotnames didn't return a list or None copyreg._slotnames 并没有返回一列表或空 cannot pickle '<tp_name>' object 不能泡制'<类名>'个体(对象) __slotsname__ changed size during iteration __slotsname__ 在迭代时, 更改了其大小 __getnewargs_ex__ should return a tuple, not '<tp_name>' __getnewargs_ex__ 应返回一组元, 而非'<类名>' __getnewargs_ex__ should return a tuple of length 2, not <newargs> __getnewargs_ex__ 应返回一长度为2的组元, 而非'<变量数>' first item of the tuple returned by __getnewargs_ex__ must be a tuple, not '<tp_name>' __getnewargs_ex__ 返回组元的第一项应为一组元, 而非'<类名>' second item of the tuple returned by __getnewargs_ex__ must be a dict, not '<tp_name>' __getnewargs_ex__ 返回组元的第二项应为一词典, 而非'<类名>' __getnewargs__ should return a tuple, not '<tp_name>' __getnewargs__ 应返回一组元, 而非'<类名>' unsupported format string passed to <tp_name>.__format__ 我们不支持传入<类名>.__format__ 的格式字符串 method cannot be both class and static 类成员函数不能又是类又是静态 Type does not define the tp_name field 类型没有定义 tp_name (类名)域 type '<tp_name>' is not dynamically allocated but its base type '<tp_name>' is dynamically allocated 类型'<类名>'并不是动态地被分配, 但其基类型'<类名>'却是动态地被分配 type '<tp_name>' participates in gc and is a base type but has inappropriate tp_free slot 类型'<类名>'参与内存垃圾收集, 且是一基类型, 但有一不当 tp_free 位置 expected <d> argument, got <zd> 需要<这么多个的>自变量, 但得到<那么多个> can't apply this <s> to <tp_name> object 没法将此 <s> 应用与<类名> __get__(None, None) is invalid __get__(空, 空) 非法 __new__() called with non-type 'self' __new__() 函数被调用于非类型的 'self' <tp_name>.__new__(): not enough arguments <类名>.__new__(): 没有足够的自变量 <tp_name>.__new__(X): X is not a type object (<tp_name>) <类名>.__new__(X): X 不是一个类型的个体(对象) (<类名>) <tp_name>.__new__(<subtype_tp_name>): <subtype_tp_name> is not a subtype of <tp_name> <类名>.__new__(<子类型名字>): <子类型名字> 不是<类名>的一子类型 <tp_name>.__new__(<subtype_tp_name>) is not safe, use <staticbase_tp_name>.__new__() <类名>.__new__(<子类型名字>)不安全, 使用(<静态基类名字>).__new__() '<tp_name>' object is not a container '<类名>'个体(对象) 不是一容器 __bool__ should return bool, returned <tp_name> __bool__应返回bool, 却返回了<类名> __hash__ method should return an integer __hash__ 类成员函数应返回一整数 '<tp_name>' object is not iterable '<类名>'个体(对象)不能迭代 __init__() should return None, not '<tp_name>' __init__() 应返回空, 而非 '<类名>' object <tp_name> does not have __await__ method 个体(对象)<类名> 没有__await__ 类成员函数 object <tp_name> does not have __aiter__ method 个体(对象)<类名> 没有__aiter__ 类成员函数 super(type, obj): obj must be an instance or subtype of type super(type, obj): obj 应是类型的一子类型的例子 ------------------------------------------------------- From unicodeobject.c 源自 unicodeobject.c must be str, not <tp_name> 必须是字符串, 而非<类名> argument must be str, not <tp_name> 变量必须是字符串, 而非<类名> argument must be str or None, not <tp_name> 变量必须是字符串, 空, 而非<类名> Can't convert '<tp_name>' object to str implicitly 不能隐式地把字符串转换 '<类名>' 个体(对象) decoding str is not supported 解码字符串不被支持 decoding to str: need a bytes-like object, <tp_name> found 解码成字符串: 需要字节样的个体(对象), 而非<类名> '<encoding>' decoder returned '<unicode_tp_name>' instead of 'str'; use codecs.decode() to decode to arbitrary types '<编码>' 解码器返回 '<类名>', 而非'字符串'; 用 codecs.decode() to 解码任意类型 '<encoding>' encoder returned '<tp_name>' instead of 'bytes'; use codecs.encode() to encode to arbitrary types '<编码>' 编码器返回 '<类名>', 而非'字节'; 用 codecs.encode() to 编码任意类型 path should be string, bytes, or os.PathLike, not <args_tp_name> 路径应该是字符串, 字节, 或os.路径, 而非<类名> character mapping must be in range(0xMAX_UNICODE + 1) 字符映射须在范围内(0xMAX_UNICODE + 1) character mapping must be in range(256) 字符映射须在范围内(256) character mapping must return integer, bytes or None, not <tp_name> 字符映射须返回整数, 字节, 空, 而非<类名> character mapping must return integer, None or str 字符映射须返回整数, 空, 或字符串 separator: expected str instance, <tp_name> found 分隔器: 需要字符串例子, 而非<类名> sequence item <d>: expected str instance, <tp_name> found 序列项目 <d>: 需要字符串例子, 而非<类名> The fill character must be a unicode character, not <tp_name> 填充字符须是统一字符代码字符, 而非<类名> The fill character must be exactly one character long 填充字符须是正好只有一个字符长 Can't compare <tp_name> and <tp_name> 没法比较<类名>与<类名> 'in <string>' requires string as left operand, not <tp_name> '在 <string>中' 左边的操作数需是字符串, 而非<类名> can only concatenate str (not "<tp_name>") to str str(字符串)只能合并str(字符串) (而非 ”<类名>“) <striptype> arg must be None or str <strip类型> 变量须是空或字符串 must be str or None, not <tp_name> 必须是字符串或空, 而非<类名> first maketrans argument must be a string if there is a second argument maketrans 若有第二自变量时, 首自变量须是字符串 if you give only one argument to maketrans it must be a dict maketrans 只有一自变量时, 它须是词典 keys in translate table must be strings or integers 关键词于翻译表中必须是字符串或整数 tuple for startswith must only contain str, not <tp_name> startswith的组元须含字符串, 而非<类名> tuple for endswith must only contain str, not <tp_name> endswith的组元须含字符串, 而非<类名> endswith first arg must be str or a tuple of str, not <tp_name> endswith 首 变量 须是字符串或字符串的组元, 而非<类名> not enough arguments for format string 格式字符串所需的变量不够 %%<type> format: an integer is required, not <tp_name> %%<类型> 格式: 需要一整数, 而非<类名> %%<type> format: a real number is required, not <tp_name> %%<类型> 格式: 需要一实数, 而非<类名> %c requires int or char %c 需要有映射整数或字符 format requires a mapping 格式需要有映射 * wants int * 需要整数 not all arguments converted during string formatting 在字符串格式化过程中, 并不是所有的变量都被转换 ------------------------------------------------------- From object.c 源自 object.c str() or repr() returned '<tp_name>' str() 函数 或 repr() 函数 返回了 '<类名>' __repr__ returned non-string (type <tp_name>) __repr__ 返回了非-字符串(类型<类名>) __str__ returned non-string (type <tp_name>) __str__ 返回了非-字符串(类型<类名>) __bytes__ returned non-bytes (type <tp_name>) __bytes__ 返回了非-字符串(类型<类名>) 'opstrings[op]' not supported between instances of '<tp_name>' and '<tp_name>' 在'<类名>'与'<类名>'之间, 'opstrings[op]' 不被支持 unhashable type: '<tp_name>' 无法散列的类型: '<类名>' attribute name must be string, not '<tp_name>' 属性名须是字符串, 而非'<类名>' '<tp_name>' object has no attribute '<N>' '<类名>'个体(对象)无属性 '<N>' '<tp_name>' object has no attributes (< del |assign to> .<name>) '<类名>'个体(对象)无属性 (<删除|赋值于> .<名字>) '<tp_name>' object has only read-only attributes (< del |assign to> .<name>) '<类名>'个体(对象)只有只读性的属性 (<删除|赋值于> .<名字>) '<tp_name>' object is not iterable '<类名>'个体(对象)不可迭代 cannot delete __dict__ 无法删除 __dict__ __dict__ must be set to a dictionary, not a <tp_name>' __dict__须设定为一词典, 而非'<类名>' dir(): expected keys() of locals to be a list, not '<tp_name>' dir(): 局部需要keys()是一列表, 而非'<类名>' object does not provide __dir__ 个体(对象)不提供 __dir__ NoneType takes no arguments 非类不带自变量 NotImplementedType takes no arguments 不实现类不带自变量 ------------------------------------------------------- From methodobject.c 源自 methodobject.c <method>.__class__.__qualname__ is not a unicode object <类成员函数>.__class__.__qualname__ 不是一统一字符代码个体(对象) <funcstr> takes no keyword arguments <函数字符串> 不带有关键词自变量 <funcstr> takes no arguments (<nargs> given) <函数字符串> 不带有自变量 (<这么多个> 给了) <funcstr> takes exactly one argument (<nargs> given) <函数字符串> 仅带有一自变量 (<这么多个> 给了) <ml_name> takes no keyword arguments <类成员函数名> 不带有关键词自变量 ------------------------------------------------------- From abstract.c 源自 abstract.c __length_hint__ must be an integer, not <tp_name> __length_hint__ 须是一整数, 而非<类名> __length_hint__() should return >= 0 __length_hint__() 应返回 >= 0 sequence index must be integer, not '<tp_name>' 序列下标须是整数, 而非'<类名>' '<tp_name>' object is not subscriptable '<类名>'个体(对象)不可使用下标 '<tp_name>' object does not support item assignment '<类名>'个体(对象)不支持项目赋值 '<tp_name>' object does not support item deletion '<类名>'个体(对象)不支持项目删除 a bytes-like object is required, not '<tp_name>' 需要一字节样的个体(对象), 而非'<类名>' both destination and source must be bytes-like objects 源头和终端须是字节样个体(对象) Format specifier must be a string, not <tp_name> 格式指定器须是字符串, 而非<类名> __format__ must return a str, not <tp_name> __format__ 须 返回一字符串, 而非<类名> unsupported operand type(s) for <op_name>: '<tp_name>' and '<tp_name>' 对<操作名>的操作数类型, 我们不支持: '<类名>'和'<类名>' unsupported operand type(s) for <tp_name>: '<tp_name>' and '<tp_name>'. Did you mean "print(<message>, file=<output_stream>)"? 对<类名>的操作数类型, 我们不支持: '<类名>'和'<类名>'。 你是否想弄 “打印(<信息>, 文件=<输出_流>” unsupported operand type(s) for ** or pow(): '<tp_name>' and '<tp_name>' 对** 或 pow()的操作数类型, 我们不支持: '<类名>'和'<类名>'。 unsupported operand type(s) for pow(): '<tp_name>', '<tp_name>', '<tp_name>' 对pow()的操作数类型, 我们不支持: '<类名>'和'<类名>'。 can't multiply sequence by non-int of type '<tp_name>' 不能对序列乘以非整数类型'<类名>' bad operand type for unary -: '<tp_name>' 坏的一元操作符 - 的操作数类型: '<类名>' bad operand type for unary +: '<tp_name>' 坏的一元操作符 + 的操作数类型: '<类名>' bad operand type for unary ~: '<tp_name>' 坏的一元操作符 ~ 的操作数类型: '<类名>' bad operand type for abs(): '<tp_name>' 坏的abs() 的操作数类型: '<类名>' '<tp_name>' object cannot be interpreted as an integer '<类名>'个体(对象)不能被解释为整数 __index__ returned non-int (type <tp_name>) __index__ 返回了 非-整数 (类型 <类名>) cannot fit '<tp_name>' into an index-sized integer 不能把'<类名>'装入下标大小的整数 __int__ returned non-int (type <tp_name>) __int__ 返回了 非-整数 (类型 <类名>) __trunc__ returned non-Integral (type <tp_name>) __trunc__ 返回了 非-整数 (类型 <类名>) int() argument must be a string, a bytes-like object or a real number, not '<tp_name>' int() 变量须是字符串, 字节样个体(对象)或实数, 而非'<类名>' <tp_name>.__float__ returned non-float (type <tp_name>) <类名>.__浮点__ 返回了非 -浮点 (类型 <类名>) <tp_name> is not a sequence <类名>不是一序列 object of type '<tp_name>' has no len() 个体(对象)的类型'<类名>'没有 len() '<tp_name>' object can't be concatenated '<类名>'个体(对象)不能被合并 '<tp_name>' object can't be repeated '<类名>'个体(对象)不能被重复 '<tp_name>' object does not support indexing '<类名>'个体(对象)不支持下标操作 '<tp_name>' object is unsliceable '<类名>'个体(对象)不能被分片 '<tp_name>' object does not support item assignment '<类名>'个体(对象)不支持项目赋值 '<tp_name>' object doesn't support item deletion '<类名>'个体(对象)不支持项目删除 '<tp_name>' object doesn't support slice assignment '<类名>'个体(对象)不支持短片赋值 '<tp_name>' object doesn't support slice deletion '<类名>'个体(对象)不支持短片删除 argument of type '<tp_name>' is not iterable '<类名>'类型变量不可迭代 <tp_name> is not a mapping <类名> 不是一个映射 <tp_name>.<meth_id>() returned a non-iterable (type <tp_name>) <类名>.<类成员函数_id>() 返回了一非迭代 (类型 <类名>) isinstance() arg 2 must be a type, a tuple of types or a union isinstance() 自变量 2 须是一类型, 一类型的组元, 或并集 issubclass() arg 1 must be a class issubclass() 自变量 1 须是一类 issubclass() arg 2 must be a class, a tuple of classes, or a union issubclass() 自变量 2 须是一类, 一类的组元, 或并集 iter() returned non-iterator of type '<tp_name>' iter() 返回了 类型'<类名>'的 非-迭代器 ------------------------------------------------------- From listobject.c 源自 listobject.c can only concatenate list (not "<tp_name>") to list 只能将列表与列表合并(而非'<类名>') list indices must be integers or slices, not <tp_name> 列表下标须是整数或短片, 而非<类名> ------------------------------------------------------- From ceval.c 源自 ceval.c 'async for' requires an object with __aiter__ method, got <tp_name> 'async for (为...异步)' 需要一带有__aiter__类成员函数 的个体(对象), 但得到了<类名> 'async for' received an object from __aiter__ that does not implement __anext__: <tp_name> 'async for (为...异步)' 自__aiter__ 收到了一未实现__anext__的个体(对象): <类名> 'async for' requires an iterator with __anext__ method, got <tp_name> 'async for (为...异步)' 需要一带有__anext__类成员函数 的迭代器, 但得到了<类名> 'async for' received an invalid object from __anext__: <tp_name> 'async for (为...异步)' 自__aiter__ 收到了一非法的个体(对象): <类名> Value after * must be an iterable, not <tp_name> 自*的数值须是可迭代的, 而非<类名> '<tp_name>' object is not a mapping '<类名>'个体(对象)不是一字符串 catching classes that do not inherit from BaseException is not allowed 抓取异常的类没有继承自BaseException, 故不被允许 cannot 'yield from' a coroutine object in a non-coroutine generator 没法从非共例程产生器中的共例程个体(对象)‘产生’ <qualname>() missing <len> required <kind> arguments: <name> <名字>() 缺少 <长度> 需要 <这种> 自变量: <名字> <qualname>() takes <sig> positional arguments but <give> were given <名字>() 带有<这么多> 的 位置 自变量, 但你给了 <那么多> <qualname>() got some positional-only arguments passed as keyword arguments: '<error_names>' <名字>() 获得了作为关键词自变量传入的 一些只能是位置性质的自变量: <错误名字> <qualname>() keywords must be strings <名字>() 关键词须是字符串 <qualname>() got an unexpected keyword argument '<keyword>' <名字>() 得到了异常的关键词自变量 '<关键词>' <qualname>() got multiple values for argument '<keyword>' <名字>() 对自变量 '<关键词>', 得到了多个数值 calling <type> should have returned an instance of BaseException, not <type_name> 调用<类型>应返回一BaseException例子, 而非<类名> exceptions must derive from BaseException 异常须继承自 BaseException exception causes must derive from BaseException 异常起因须继承自 BaseException cannot unpack non-iterable <tp_name> object 无法解开非迭代<类名>个体(对象) slice indices must be integers or None or have an __index__ method 短片下标须是整数, 空, 或有一__index__ 的类成员函数 slice indices must be integers or have an __index__ method 短片下标须是整数, 或有一__index__ 的类成员函数 module __name__ must be a string, not <tp_name> 模块__name__须是一字符串, 而非<类名> <Key|Item> in <modname>.<__dict__|__all__> must be str, not <tp_name> <关键词|项目> 于 <模块名>.<__词典__|__全__> 须是字符串, 而非<类名> <funcstr> argument after * must be an iterable, not <tp_name> <函数字符串> 自变量 在 * 之后, 须是 一 可迭代, 而非<类名> <funcstr> argument after ** must be a mapping, not <tp_name> <函数字符串> 自变量 在 ** 之后, 须是 一 映射, 而非<类名> <funcstr> got multiple values for keyword argument '<key>' <函数字符串>() 对自变量 '<关键词>', 得到了多个数值 'async with' received an object from __aenter__ that does not implement __await__: <tp_name> 'async for (与...异步)' 自__aenter__ 收到了一未实现__await__:的个体(对象): <类名> 'async with' received an object from __aexit__ that does not implement __await__: <tp_name> 'async for (与...异步)' 自__aexit__ 收到了一未实现__await__:的个体(对象): <类名> ------------------------------------------------------- From operator.py 源自 operator.py '<name>' object can't be concatenated '<名字>'个体(对象)不能被合并 '<name>' object cannot be interpreted as an integer '<名字>'个体(对象)不能被解释为整数 ('__length_hint__ must be integer, not <name>') ('__length_hint__ 须是整数, 而非<名字>') attribute name must be a string 属性名须是一字符串 method name must be a string 类成员函数名须是一字符串 '<tp_name>' object can't be concatenated '<类名>'个体(对象)不能被合并 ============================================================================================================================================================================================================================================== FatalError 致命错误 ------------------------------------------------------- From tokenizer.c 源自 tokenizer.c tokenizer beginning of buffer 字符器缓冲器起始位置 ------------------------------------------------------- From getargs.c 源自 getargs.c too many tuple nesting levels in argument format string 在自变量字符串中太多的组元嵌入层次 excess ')' in getargs format 在 getargs 格式中太多的 ')' ------------------------------------------------------- From object.c 源自 object.c deallocating None 解除分配空 deallocating NotImplemented 解除分配尚未被实现 ------------------------------------------------------- From ceval.c 源自 ceval.c the function must be called with the GIL held, but the GIL is released (the current Python thread state is NULL) 那函数须以被控制住的GIL调用, 但GIL被释放了 (现Python线程状态是NULL (空)) non-NULL old thread state 非-NULL(空)老线程状态 wrong thread state 错误线程状态 Cannot recover from stack overflow 没法自栈溢出恢复 tstate mix-up tstate (线程状态)混乱 orphan tstate 孤儿tstate (线程状态) ============================================================================================================================================================================================================================================== Exception 异常 ------------------------------------------------------- From exceptions.c 源自 exceptions.c Common base class for all non-exit exceptions 共同基类用于所有非退出异常 Inappropriate argument type 不当自变量类型 Signal the end from iterator.__next__() iterator.__next__() 表示到结尾了 Request that a generator exit 请求一个迭代器退出 Request to exit from the interpreter 请求从解释器退出 Program interrupted by user 程序被用户打断 I/O operation would block I/O (输入/输出)会阻塞 Connection error 连接错误 Child process error 子进程错误 Broken pipe 破管 Connection aborted 连接提前退出 Connection refused 连接拒绝 Connection reset 连接重设 File already exists 文件已存在 File not found 文件找不到 Operation doesn't work on directories 存在不能用于子目录 Operation only works on directories 存在只能用于子目录 Interrupted by signal 被讯号中断 Not enough permissions 允许权不够 Process not found 进程找不到 Timeout expired 设定的等待时间已过 Read beyond end of file 读过了文件尾 Unspecified run-time error 未定运行时错误 Recursion limit exceeded 递归极限超出了 Method or function hasn't been implemented yet 类成员函数或函数尚未实现 Name not found globally 全局找不到名字 Local name referenced but not bound to a value 局部名字被引用了, 但未有一数值绑定 Attribute not found 属性找不到 Base class for lookup errors 基类查询错误 Inappropriate argument value (of correct type) 不当自变量数值 (相关类型正确) Assertion failed 断言失败 Base class for arithmetic errors 基类用于算术错误 Floating point operation failed 浮点操作失败 Result too large to be represented 结果太大, 计算机无法表示它 Second argument to a division or modulo operation was zero 除法或模数操作时, 第二个操作数为零时, 你就会得到这个错误 Internal error in the Python interpreter. Please report this to the Python maintainer, along with the traceback, the Python version, and the hardware/OS platform and version. Python 解释器内部碰到错误。 请将此报告给Python维护工程师, 请附上往回跟踪代码, Python版本, 硬件/操作系统平台和版本 Weak ref proxy used after referent went away 被引用者已经离开不在了, 你还在用弱引用代理 Buffer error 缓存器出错 Base class for I/O related errors 基类用于I/O (输入/输出) 有关的错误 Base class for warning categories 基类用于警告类别 Base class for warnings generated by user code 基类用于用户代码产生的警告 Base class for warnings about deprecated features 基类用于过时功能特色的警告 Base class for warnings about features which will be deprecated in the future. 基类用于有关于以后将会过时的功能特色的警告 Base class for warnings about dubious syntax 基类用于可疑语法的警告 Base class for warnings about dubious runtime behavior 基类用于可疑运行行为的警告 Base class for warnings about constructs that will change semantically in the future 基类用于有关于语义以后将会的改变的结构的警告 Base class for warnings about probable mistakes in module imports 基类用于警告可能的模块输入错误 Base class for warnings about Unicode related problems, mostly related to conversion problems 基类用于警告与统一文字字符代码有关的问题, 多数与转换问题有关 Base class for warnings about bytes and buffer related problems, mostly related to conversion from str or comparing to str. 基类用于警告与字节和缓存器有关的问题, 多数与字符串转换和比较有关 Base class for warnings about resource usage 基类用于警告资源的用法 exceptions bootstrapping error 异常引导程序错误 errmap insertion problem 错误映像插入问题 Module dictionary insertion problem 模块词典插入问题 ------------------------------------------------------- From abstract.c 源自 abstract.c destination is too small to receive data from source 终端太小了, 不能收源头的数据 PyBuffer_FillInfo: view==NULL argument is obsolete PyBuffer_FillInfo: 视界==NULL 自变量已经过时了 Object is not writable 个体(对象)不可写 ============================================================================================================================================================================================================================================== ImportError 输入错误 ------------------------------------------------------- From exceptions.c 源自 exceptions.c Import can't find module, or can't find name in module 输入没法找到模块, 或没法找到模块中的名字 Module not found 模块找不到 ------------------------------------------------------- From ceval.c 源自 ceval.c __import__ not found __import__ 找不到 cannot import name <R> from <R> (unknown location) 没法从 <R>中 输入名字 <R> (未知位置) cannot import name <R> from partially initialized module <R> (most likely due to a circular import) (<S>) : cannot import name <R> from <R> (<S>) 没法从部分初始化了的模块 <R> 中输入 <R> (最可能的原因是循环输入) (<S>) : 没法 从 <R> 中输入名字<R> (<S>) from-import-* object has no __dict__ and no __all__ from-import-* 个体(对象) 既无 __dict__ 又无 no __all__ ============================================================================================================================================================================================================================================== AttributeError 属性错误 ------------------------------------------------------- From exceptions.c 源自 exceptions.c characters_written 字符书写 ------------------------------------------------------- From typeobject.c 源自 typeobject.c __module__ __模块__ object <tp_name> does not have __anext__ method 个体(对象) <类名> 没有 __anext__ 类成员函数 ------------------------------------------------------- From object.c 源自 object.c '<tp_name>' object has no attribute '<X>' '<类名>'个体(对象)无属性'<X>' '<tp_name>' object attribute '<X>' is read-only '<类名>'个体(对象)属性'<X>'只可读 This object has no __dict__ 此个体(对象)无 __dict__ ============================================================================================================================================================================================================================================== IndexError 索引错误 ------------------------------------------------------- From exceptions.c 源自 exceptions.c tuple index out of range 数组索引下标数出界 ------------------------------------------------------- From unicodeobject.c 源自 unicodeobject.c string index out of range 字符串下标过界 position <pos> from error handler out of bounds 位置 <pos> 错误处理器的位置 <pos> 过界 ------------------------------------------------------- From listobject.c 源自 listobject.c list assignment index out of range 列表赋值下标出界了 list index out of range 列表下标出界了 pop from empty list 自空列表取东西 pop index out of range 取操作的下标出界了 ============================================================================================================================================================================================================================================== IndentationError 字符缩进错误 ------------------------------------------------------- From exceptions.c 源自 exceptions.c characters_written 字符书写 Improper mixture of spaces and tabs 不当地混合了空格和制表字符 ============================================================================================================================================================================================================================================== LookupError 查询错误 ------------------------------------------------------- From exceptions.c 源自 exceptions.c Sequence index out of range 系列的索引下标数出界了 Mapping key not found 映象关键词找不到 ============================================================================================================================================================================================================================================== UnicodeEncodeError 统一文字字符代码编码错误 ------------------------------------------------------- From exceptions.c 源自 exceptions.c '<X>' codec can't encode character '\\x<c>' in position <zd>: <X> '<X>' 编码解码器不能编码 字符 '\\x<x>' 处于位置 <zd>: <X> '<X>' codec can't decode byte 0x<x> in position <zd>: <X> '<X>' 编码解码器不能解码 字符 0x<x> 处于位置 <zd>: <X> can't translate character '\\x<x>' in position <zd>: <X> 不能翻译 字符 '\\x<x>' 处于位置 <zd>: <X> ============================================================================================================================================================================================================================================== SystemError 系统错误 ------------------------------------------------------- From getargs.c 源自 getargs.c old style getargs format uses new features 老式 getargs 格式用了新特色 bad format string: <formatsave> 坏的格式字符串: <格式> new style getargs format but argument is not a tuple 新式 getargs 格式, 但自变量不是一个组元 Empty keyword parameter name 空的关键词参数名 Invalid format string (| specified twice) 非法格式字符串 (| 被指定了两次) Invalid format string ($ before |) 非法格式字符串 ($ 前于 |) Invalid format string ($ specified twice) 非法格式字符串 ($ 被指定了两次) Empty parameter name after $ $ 后有空的参数名 More keyword list entries <len> than format specifiers <d> 关键词列表条目 <长度> 比格式指定的 <数> 还要多 more argument specifiers than keyword list entries (remaining format:'<format>') 自变量的指定数比关键词条目数大(剩余 格式:'<格式>') Empty keyword parameter name 空的关键词参数名 argument list is not a tuple 自变量列表不是一个组元 ------------------------------------------------------- From typeobject.c 源自 typeobject.c PyArg_UnpackTuple() argument list is not a tuple PyArg_UnpackTuple() 变量列表不是一个组元 Py_tp_bases is not a tuple Py_tp_bases 不是一个组元 ------------------------------------------------------- From unicodeobject.c 源自 unicodeobject.c Negative size passed to _PyUnicode_New 赋值大小被传入_PyUnicode_New invalid maximum character passed to PyUnicode_New 非法最大字符被传入_PyUnicode_New Cannot modify a string currently used 不能更改正被使用的字符串 how_many cannot be negative how_many (这么多)不能是负数 Cannot write <how_many> characters at <to_start> in a string of <length> characters 不能写<这么多的> 字符 于 <起始处> 于<长度>的字符串中 Cannot copy <unicode_kind_name> characters into a string of <unicode_kind_name> characters 不能复制<统一文字代码名>的字符到<另一统一文字代码名>字符串 Negative size passed to PyUnicode_FromStringAndSize 负数被传入到PyUnicode_FromStringAndSize invalid kind 非法种类 string is longer than the buffer 字符串比缓冲区还长 ------------------------------------------------------- From methodobject.c 源自 methodobject.c <ml_name> method: bad call flags <类成员函数名>函数: 不好的调用旗标 attempting to create PyCMethod with a METH_METHOD flag but no class 试图用METH_METHOD 旗标创建PyCMethod, 但无类 attempting to create PyCFunction with class but no METH_METHOD flag 试图用类创建PyCFunction, 但无METH_METHOD 旗标 ------------------------------------------------------- From abstract.c 源自 abstract.c null argument to internal routine null 自变量用于内部例程 Format specifier must be a string, not <tp_name> 格式指定器须是字符串, 而非<类名> PyNumber_ToBase: base must be 2, 8, 10 or 16 PyNumber_ToBase: 基须是 2, 8, 10 或 16 ------------------------------------------------------- From ceval.c 源自 ceval.c bad RAISE_VARARGS oparg 坏的 提出_数目可变的变量 操作变量 popped block is not an except handler 取出的块不是一异常处理器 no locals found when storing <name> 在储存 <名字>时, 局部找不到 no locals when deleting <name> 在删除 <名字>时, 局部找不到 no locals when loading <name> 在装入 <名字>时, 局部找不到 no locals found when setting up annotations 在设定注释时, 局部找不到 bad BUILD_CONST_KEY_MAP keys argument 坏的BUILD_CONST_KEY_MAP 关键词变量 no locals found during 'import *' 在‘输入 *'时, 局部找不到 unexpected conversion flag <which_conversion> 异常转换旗标 <这种转换> unknown opcode 未知操作码 error return without exception set 返回错误, 却未设定异常 NULL globals NULL (空)全局 frame does not exist 框架不存在 ============================================================================================================================================================================================================================================== NameError 名字错误 ------------------------------------------------------- From ceval.c 源自 ceval.c __build_class__ not found __build_class__ 找不到 name '<name>' is not defined 名字 '<名字>' 未被定义 local variable '<name>' referenced before assignment 在赋值前, 局部变量'<名字>' 就被引用了 free variable '<name>' referenced before assignment in enclosing scope 在包围范围内, 在赋值前, 自由变量'<名字>' 就被引用了 ============================================================================================================================================================================================================================================== KeyError 关键词错误 ------------------------------------------------------- From ceval.c 源自 ceval.c __build_class__ not found __build_class__ 找不到 ============================================================================================================================================================================================================================================== OverflowError 溢出错误 ------------------------------------------------------- From getargs.c 源自 getargs.c unsigned byte integer is less than minimum 无符号字节整数小于最小值 unsigned byte integer is greater than maximum 无符号字节整数大于最大值 signed short integer is less than minimum 有符号短整数小于最小值 signed short integer is greater than maximum 有符号短整数大于最大值 signed integer is greater than maximum 有符号整数大于最大值 signed integer is less than minimum 有符号整数小于最小值 ------------------------------------------------------- From unicodeobject.c 源自 unicodeobject.c encoded result is too long for a Python string 编码结果对Python字符串而言太长 input too long 输入太长 character argument not in range(0x110000) 字符自变量不在范围(0x110000) decoded result is too long for a Python string 解码结果对Python字符串而言太长 position <pos> from error handler out of bounds 错误处理器的位置 <pos> 过界 join() result is too long for a Python string join()函数结果对Python字符串而言太长 padded string is too long 被垫的字符串太长 replace string is too long 替代字符串太长 strings are too large to concat 要合并的字符串太长 new string is too long 新字符串太长 string index out of range 字符串索引下标过界 repeated string is too long 被代替的字符串太长 string is too long to generate repr 要产生 repr 的字符串太长 precision too large 精度太大 %c arg not in range(0x110000) %c变量不在范围内(0x110000) ------------------------------------------------------- From abstract.c 源自 abstract.c count exceeds C integer size 计数器超出了C整数值 index exceeds C integer size 下标数超出了C整数值 ============================================================================================================================================================================================================================================== ValueError 数值错误 ------------------------------------------------------- From exceptions.c 源自 exceptions.c Unicode related error 统一文字字符代码错误 ------------------------------------------------------- From getargs.c 源自 getargs.c embedded null byte 内嵌null字节 embedded null character 内嵌null(空)字符 encoded string too long <size>, maximum length <size> 编码字符串太长 <size>, 最大长度 <size> ------------------------------------------------------- From typeobject.c 源自 typeobject.c __len__() should return >= 0 __len__() (长度函数())应该返回 >= 0 ------------------------------------------------------- From unicodeobject.c 源自 unicodeobject.c character U+%<ch> is not in range [U+0000; U+10ffff] 字符U+%<ch>不在范围内 [U+0000; U+10ffff] size must be positive 对象须为正的 width too big; 宽度过大 precision too big 精度过大 PyUnicode_FromFormatV() expects an ASCII-encoded format string, got a non-ASCII byte: 0x<p> PyUnicode_FromFormatV() 需要一ASCII-编码格式字符串, 却得到一非-ASCII字节: 0x<p> embedded null character 内嵌null字符 chr() arg not in range(0x110000) chr() 自变量不在范围内(0x110000) unsupported error handler 没有得到支持的错误处理器 embedded null byte 内嵌null字节 character out of range 字符超出范围 invalid code page number 非法编码页数 character mapping must be in range(0x<MAX_UNICODE+1>) 字符映射须在范围内(0x<MAX_UNICODE+1>) fill character is bigger than the string maximum character 填充字符大于字符串的最大字符 substring not found 子字符串找不到 the first two maketrans arguments must have equal length 首两个maketrans 自变量须等长 string keys in translate table must be of length 1 字符串关键词于翻译表中必须是长度1 string too large in _PyUnicode_FormatLong 字符串在_PyUnicode_FormatLong太大 incomplete format key 不完整格式关键词 incomplete format 不完整格式 unsupported format character '<c>' (0x<x>) at index <zd> 不被支持的格式字符 '<c>' (0x<x>) 处于索引下标 <zd> ------------------------------------------------------- From abstract.c 源自 abstract.c sequence.index(x): x not in sequence 序列.index(x): x 不在序列中 ------------------------------------------------------- From listobject.c 源自 listobject.c list modified during sort 在排序时列表被改了 <value> is not in list <值> 不在列表中 list.remove(x): x not in list list.remove(x): x 不在列表中 must assign iterable to extended slice 须将可迭代物赋值给扩展的短片 attempt to assign sequence of size <size> to extended slice of size <slicelength> 试图将<这么大的>序列赋值给<那么大的>扩展的短片 ------------------------------------------------------- From ceval.c 源自 ceval.c not enough values to unpack (expected <argcnt>, got <d>) 值(数量)不足以解开包装 (需要 <这么多的变量数目>, 只得到 <那么多>) not enough values to unpack (expected at least <argcnt>, got <d>) 值(数量)不足以解开包装 (需要至少 <这么多的变量数目>, 只得到 <那么多>) too many values to unpack (expected <argcnt>) 太多值(数量)以解开包装 (需要 <这么多的变量数目>) ------------------------------------------------------- From operator.py 源自 operator.py sequence.index(x): x not in sequence 序列.index(x): x 不在序列中 __length_hint__() should return >= 0 __length_hint__() 应该 返回 >= 0 ============================================================================================================================================================================================================================================== MemoryError 内存错误 ------------------------------------------------------- From typeobject.c 源自 typeobject.c Out of memory interning an attribute name 加入一属性名时, 内存不够了 ------------------------------------------------------- From object.c 源自 object.c stack overflow 栈溢出了 ============================================================================================================================================================================================================================================== RecursionError 递归错误 ------------------------------------------------------- From ceval.c 源自 ceval.c maximum recursion depth exceeded <where> 最大递归深度被超出了 <深度位置> ============================================================================================================================================================================================================================================== RuntimeError 运行时错误 ------------------------------------------------------- From typeobject.c 源自 typeobject.c Error calling __set_name__ on '<tp_name>' instance <key> in '<tp_name>' 在 '<类名>'中, 对'<类名>' 例子的 <关键词>', 调用__set_name__ 错误了 super(): no arguments super(): (母类初始化函数())没有自变量 super(): arg[0] deleted super(): (母类初始化函数())第一自变量被删除 super(): bad __class__ cell super(): (母类初始化函数())坏的 __类__单元 super(): __class__ is not a type (tp_name) super(): (母类初始化函数())__类__不是一个类 (类名) super(): __class__ cell not found super(): (母类初始化函数())找不到__类__单元 super(): no current frame super(): (母类初始化函数())无现时的框架 invalid slot offset 非法位置偏移量 ------------------------------------------------------- From unicodeobject.c 源自 unicodeobject.c unknow filesystem error handler 未知文件系统错误处理器 ------------------------------------------------------- From ceval.c 源自 ceval.c lost sys.displayhook 丢掉了 sys.displayhook coroutine is being awaited already 共例程正在被等待 No active exception to reraise reraise无活跃的异常 ============================================================================================================================================================================================================================================== UnicodeError 统一文字字符代码错误 ------------------------------------------------------- From unicodeobject.c 源自 unicodeobject.c invalid start byte 非法起始字节 invalid continuation byte 非法连续字节 code point in surrogate code point range(0xd800, 0xe000) 代码点在代替代码点范围内(0xd800, 0xe000) code point not in range(0x110000) 代码点不在范围内(0x110000) truncated data 截去的数据 unexpected end of data 意外的数据结尾 illegal encoding 非法编码 illegal UTF-16 surrogate 非法UTF-16替代 truncated \\xXX escape 截去的\\xXX退出键 illegal Unicode character 非法统一文字代码字符 \\N escapes not supported (can't load unicodedata module) \\N退出键不被支持 (没能装非统一文字代码模块) malformed \\N character escape 坏形式的\\N字符退出键 unknown Unicode character name 未知统一文字代码字符名 truncated \\uXXXX escape 截去的\\UXXXX退出键 truncated \\UXXXXXXXX escape 截去的\\UXXXXXXXX退出键 \\Uxxxxxxxx out of range \\Uxxxxxxxx 超出范围 character maps to <undefined> 字符映射到<未定义> invalid decimal Unicode string 非法统一文字代码十进制字符串
============================================================================================================================================================================================================================================== ============================================================================================================================================================================================================================================== 3. Python Exception Description Python 异常错误描述及其中文翻译 AssertionError 断言错误 Raised when the assert statement fails. 断言语句失败时发生 AttributeError 属性错误 Raised on the attribute assignment or reference fails. 属性赋值或者引用失败时发生 EOFError 文件结尾(到头了)错误 Raised when the input() function hits the end-of-file condition. input() (输入函数)碰到了文件结尾的条件时发生 FloatingPointError 浮点错误 Raised when a floating point operation fails. 浮点操作失败 GeneratorExit 发生器退出 Raised when a generator's close() method is called. 发生器的 close()成员函数被调用了 ImportError 模块输入错误 Raised when the imported module is not found. 找不到你想要输入的模块 IndexError 索引错误 Raised when the index of a sequence is out of range. 系列的索引下标数出界了 KeyError 词典关键词错误 Raised when a key is not found in a dictionary. 词典中找不到关键词 KeyboardInterrupt 键盘中断 Raised when the user hits the interrupt key (Ctrl+c or delete). 用户敲入了强行中断键 (Ctrl键与c键同时按, 或按了delete(删除)键) MemoryError 内存错误 Raised when an operation runs out of memory. 内存不够了 NameError 名字错误 Raised when a variable is not found in the local or global scope. 局部或全局范围里头, 没法找到一个变量的名字 NotImplementedError 没有实现错误 Raised by abstract methods. 抽象成员函数会产生此错误 OSError 操作系统错误 Raised when a system operation causes a system-related error. 一个系统操作导致一个系统方面的错误 OverflowError 溢出错误 Raised when the result of an arithmetic operation is too large to be represented. 算术操作的结果太大, 计算机无法表示它 ReferenceError 引用错误 Raised when a weak reference proxy is used to access a garbage collected referent. 一个弱引用代理被用于存取(或读取)一个已经被内存垃圾器收回的被引用物 RuntimeError 运行时错误 Raised when an error does not fall under any other category. 一个未能被归类的运行时发生的错误 StopIteration 停止迭代 Raised by the next() function to indicate that there is no further item to be returned by the iterator. 当迭代器无法再能返回一项数据时, 你若再调用next()函数, 它就会扔出此错误给你 SyntaxError 语法错误 Raised by the parser when a syntax error is encountered. 你写的代码不符合语法规则时, Python解析器不懂你写的代码, 它就会扔出此错误给你 IndentationError 字符缩进错误 Raised when there is an incorrect indentation. 错误的字符缩进 TabError 制表字符错误 Raised when the indentation consists of inconsistent tabs and spaces. 制表字符和空格字符不一致使用 SystemError 系统错误 Raised when the interpreter detects internal error. Python解释器探测到了内部的错误 SystemExit 系统退出 Raised by the sys.exit() function. 函数sys.exit()一运行, 就会导致系统退出 TypeError 类型错误 Raised when a function or operation is applied to an object of an incorrect type. 当你试图把一函数或操作强行加到某一个不正确的类型的数据个体上面时, 它就会扔出此错误给你 UnboundLocalError 物绑定局部错误 Raised when a reference is made to a local variable in a function or method, but no value has been bound to that variable. 当一个函数或成员函数含有一个变量, 但此变量却未绑定任何值时, 你若试图想要对此变量建立一引用时,它(Python)就会扔出此错误给你 UnicodeError 统一文字字符代码错误 Raised when a Unicode-related encoding or decoding error occurs. 对统一文字字符代码进行编码或解码时产生了错误 UnicodeEncodeError 统一文字字符代码编码错误 Raised when a Unicode-related error occurs during encoding. 对统一文字字符代码进行编码时产生了错误 UnicodeDecodeError 统一文字字符代码解码错误 Raised when a Unicode-related error occurs during decoding. 对统一文字字符代码进行解码时产生了错误 UnicodeTranslateError 统一文字字符代码翻译错误 Raised when a Unicode-related error occurs during translation. 对统一文字字符代码进行翻译时产生了错误 ValueError 不恰当数值错误 Raised when a function gets an argument of correct type but improper value. 函数的自变量的类型正确, 但数值却不恰当 ZeroDivisionError 被零除错误 Raised when the second operand of a division or module operation is zero. 除法或模数操作时, 第二个操作数为零时, 你就会得到这个错误