Python 如何修复'AttributeError:module';apache#u beam.coders.coders';没有属性';可变编码器&x27`

Python 如何修复'AttributeError:module';apache#u beam.coders.coders';没有属性';可变编码器&x27`,python,apache-beam,Python,Apache Beam,我正在构建ApacheBeam管道,但在尝试导入管道选项时遇到AttributeError 我正在一个干净的虚拟环境中使用python3.6在Ubuntu服务器上进行测试 步骤: virtualenv-p python3.6 beam env . 梁环境/箱/激活 pip安装apache_beam==2.12.0 python3.6 test.py 内部测试.py: 从apache_beam.options.pipeline_options导入PipelineOptions 我希望导入能够成

我正在构建ApacheBeam管道,但在尝试导入管道选项时遇到AttributeError

我正在一个干净的虚拟环境中使用python3.6在Ubuntu服务器上进行测试

步骤:

virtualenv-p python3.6 beam env
. 梁环境/箱/激活
pip安装apache_beam==2.12.0
python3.6 test.py
内部测试.py:

从apache_beam.options.pipeline_options导入PipelineOptions
我希望导入能够成功工作,但出现以下错误:

AttributeError:模块“apache_beam.coders.coders”没有属性“VarIntCoder”

更新:

事实上,这个错误是由python3造成的。切换到python2.7,错误消失了。Beam正在完全过渡到python3,预计很快将100%完成。[我不确定100%的预计到达时间,可能需要在用户组中再次检查确切的时间线]

原件: 在您的virtualenv中也要执行以下操作:

pip install -e .[gcp,test]
也可以在apache_beam文件夹下执行此操作:

python setup.py sdist
然后再试一次

即使使用virtualenv,安装环境也可能很棘手。我有时觉得本页中的提示很有用:


希望能有帮助

在使用apache beam编写自己的数据管道时,我发现了一个非常奇怪的行为:在名为
test.py
的文件中一旦有管道,就会出现这种行为

假设您的当前实现位于
main.py
中,您只需将整个代码复制到
test.py
文件中,然后在这两个文件上都会产生错误


我现在要解决这个问题的唯一方法是删除test.py或将其重命名为其他名称,然后问题就消失了。

要解决这个错误,您可以打开一个新项目。然后,重新安装apace beam。

对于那些使用Google Colab的用户,我遇到了同样的错误,并通过重新启动运行时并再次运行整个笔记本解决了这个问题

我的进口是

!{'pip install apache-beam[gcp]'}
!{'pip install apache-beam[interactive]'}
!{('pip install google-apitools')}

我启动了beam github项目,使用您的步骤从头开始安装,但运气不好。AttributeError在运行时发生,即使鼻测试通过了Trange,但对我来说是有效的。在github项目的拉式安装过程中,您是否退出了python3.6环境并重新进入?是的。我完成了项目,签出了2.12.0版,创建了一个新的虚拟环境,按照您的步骤,运行了上面链接的示例,得到了相同的结果,我在2.12版、2.13版和master head版之间来回切换。它们中的每一个都可以工作(重复上述设置步骤后)。我要运行的命令是“python-m apache_beam.examples.wordcount--output=/tmp/out*”。你在使用linux吗?好的,那么当我从基本apache_beam目录运行它时,python-m apache_beam.examples.wordcount--output=/tmp/out*工作,但是当我cd到我的自定义项目目录时,相同的命令会因错误而中断。我正在运行UbuntuThis非常奇怪,几分钟前我想测试beam并称之为test.pyThis很奇怪,但重命名确实有帮助。请确认这一点,在按照公认的答案修改环境后也为我做到了。感谢您提及这一点,它为我节省了数小时的调试时间。这也正是我所经历的。将驱动程序程序文件重命名为除
test.py
以外的其他文件,所有操作都正常。由于test.py出现此错误,我损失了2个小时。非常感谢,我删除了它,所有操作都正常。