python - 不理解这个关于元类的 SyntaxError
问题描述
下面的代码是 pyrlp 包中的 atomic.py,它是一个 pyethereum 库。
import abc
class Atomic(metaclass=abc.ABCMeta):
"""ABC for objects that can be RLP encoded as is."""
pass
Atomic.register(bytes)
Atomic.register(bytearray)
这是来自控制台的错误信息:
from rlp.atomic import Atomic
File "/Users/jerryin/Desktop/pyeth/pyrlp/rlp/atomic.py", line 4
class Atomic(metaclass=abc.ABCMeta):
^
SyntaxError: invalid syntax
自导入以来,我没有修改过该项目。谁能告诉我这有什么问题?
另外,我在这个项目中使用的解释器是 Python 2.7。
解决方案
Python 2 不支持metaclass
类的关键字参数,并且pyrlp 在 2018 年 4 月放弃了对 Python 2 的支持。
请改用 Python 3。
推荐阅读
- javascript - 警报后删除字段输入的文本
- unit-testing - 如何在junit上使用带有对象参数的mockmvs向控制器发送请求?
- swift - 转换为泛型函数
- laravel - 服务中的自定义验证消息
- entity-framework-core - 如何使用更新数据库命令
- c# - 程序类型已经存在:android.support.v4.util.ArraySet$1
- graphql - PostGraphile - 按特定 ID 排序结果
- php - 路由调用错误的控制器方法
- sql - 如何将整列除以单个值并水平旋转
- kubernetes - kubectl get componentstatus 显示不健康