问题标签 [python-2to3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在 Python 中导入 BeautifulSoup 时出错
使用 of 执行脚本from bs4 import BeautifulSoup
会出现以下错误:
python - AttributeError:“有向图”对象没有属性“_node”
该代码是由其他人使用 Python 2.7.12、networkx 1.11、numpy 1.13.0、scipy 0.18.1、matplotlib 2.0.2 编写的。它由几个自制模块组成。我已使用“2to3”转换器将整个代码转换为 Python 3.x。我正在使用具有所有最新软件包的 Spyder 运行整个代码。
现在在运行代码时AttributeError: 'DiGraph' object has no attribute '_node'
出现错误。以下是 spyder 中的错误信息。
如果需要解决方案,我可以提供部分代码。
注意:代码使用旧包成功运行。
python - Python 2to3 在函数参数周围添加额外的括号
我有点困惑,为什么2to3
要费心将我的打印参数包含在一组额外的括号中,这些参数已经是函数式的。例如
变成
这些本质上是保守的误报吗?我在想)
格式函数中的尾随可能是在抛出它的逻辑。
python - Python2 和 Python3 之间的 BeautifulSoup HTMLparsingError
我在 Python27 上运行了一个 bs4 程序,它运行良好,我在使用 Python3 时遇到了问题。我正在为两者使用更新版本的 bs4。我正在运行它的文件是 html,我注意到错误出现在标签上。是否有我需要更新的支持模块?像lxml?
代码:
这是错误:
永远感谢您的帮助!
python - Python 2to3 转换后的 Python 包找不到脚本
我在我的 64 位 Linux 平台上的 Debian Stretch 中安装了 Python 2.7 和 3.5。
我已经安装了 PyChem ( http://pychem.sourceforge.net/ ),它是在使用 2to3 脚本转换 python 文件后用 Python2 编写的。转换过程中没有警告或错误消息。
安装将文件放在 /usr/local/lib/python2.7/dist-packages/pychem 中(pychem-1.0.egg-info 在 /usr/local/lib/python2.7/dist-packages 中)。
为了测试我尝试的应用程序:
这产生了错误消息"No module named 'pychem'"
。
不幸的是,对我来说,问题超出了我作为有机化学家所拥有的计算机知识非常有限的范围。指向解决问题的指针将不胜感激。
提前致谢。
python - 如何使用相同的代码将 unicode 文本写入 python 2 和 3 中的文件?
我正在尝试编写一个可以通过 python 2 和 3 运行的程序。它从网站读取字符并写入文件。我已经unicode_literals
从 __future__ 导入了。
直接尝试编写如下所示的字符串:
会导致 UnicodeEncodeError:
在 python2 中将其写入文件的唯一方法是:
但是,尝试在 python3 中重用相同的代码是行不通的,因为在 python 3 中,
例如
强制 afp.write(txt2)
会抛出 TypeError:
因此,可以txt = u'his$\u2026\n'
在 python 2 和 3 中使用相同的代码块将其写入文件。(除了在 fp.write 上使用包装器)
python - 导入谷歌库的Python 2to3转换
我已成功运行Python2 Google Example Youtube 上传代码。现在,我想尝试将此代码转换为 Python3。当我用 2to3 工具转换它时,结果如下所示。如果我尝试使用 Python3 运行它,我会收到如下错误。我使用 Rasbian 操作系统。我必须导入哪些 Python3 库而不是google.oauth2.credentials
, google_auth_oauthlib.flow
, google_auth_oauthlib.flow
?
转换后的 Python3 代码:
错误:
pandas - 我们应该使用 pandas.compat.StringIO 还是 Python 2/3 StringIO?
StringIO 是我们在从文本中读取 pandas 数据帧时使用的类文件字符串缓冲区对象,例如“如何从字符串创建 Pandas 数据帧?”
我们应该将这两个导入中的哪一个用于 StringIO(在 pandas 中)?这是一个长期存在的问题,四年多来从未得到解决。
StringIO.StringIO
(Python 2) /io.StringIO
(Python 3)- 优点:更稳定的面向未来的代码,但迫使我们进行版本分叉,例如参见 EmilH 底部的代码。
pandas.compat.StringIO
- pandas.compat 是 0.13.0(2014 年 1 月)引入的 2/3 兼容性包(“无需 2to3”)
- 从 0.22 开始,pandas.compat 包仍被标记为“私有”,并且没有计划公开“警告 Pandas.core、pandas.compat 和 pandas.util 顶级模块被认为是私有的。功能的稳定性在那些模块中不能保证。” 尽管自 0.13 以来它们基本上没有破裂
- pandas.compat 源定义了
builtins, StringIO/cStringIO, BytesIO, cPickle, httplib
范围、过滤器、映射和 zip 的导入、迭代器版本,以及 Python 3 兼容性的其他必要元素 - 请参阅0.13.0 whatsnew
从标准(来自 EmilH)导入的版本 2/3 分叉代码:
笔记:
pandas.compat
自 pandas 0.13.0(2014 年 1 月)作为 pandas 中的子包以来就存在- 它似乎也作为独立包发布:0.1.0(2017 年 6 月 10 日)和 0.1.1(2017 年 6 月 10 日)
python - Python 2 到 3 转换:'TypeError:缺少必需的位置参数:'
我是 Python(以及 stackoverflow)的新手,我的第一个任务是将能量流模拟程序从 Python 2.7 转换为 Python 3.6 并让它在 3.6 上运行。我已经使用了 2to3 转换器并解决了一些其他错误,但现在我遇到了这个错误,不知道这是现有程序的错误还是我使用了错误的语法等。代码显然在 Python 2 中工作。如果我另外在函数中放入house_atrs,它将启动该函数,但会引发一长串其他错误。因此,我希望对您有所帮助,并希望了解 3.6 与 2.7 相比出现此错误的原因。
错误:
vpp_interface_refpool_noPCR161026.py 的代码:
[...]
main.py中的analyze()函数代码:
python - Python msfrpc 与 python2 一起使用,使用 python 3 引发身份验证错误
我正在使用 python flask 和 python3 编写一个 web 应用程序,并且想使用 metasploit API。使用 python2 编写代码时,一切正常(因为 lib 是为 python2 编写的)。但是,当尝试在 python 3 中使用它时,我得到了这个错误:
python2和python 3版本的msfrpc.py文件唯一的区别是py2版本包含“httplib”并使用“httplib.HTTPSConnection”连接msgrpc服务,而py3版本包含“http.client”和使用“http.client.HTTPConnection”连接到服务。
有谁知道为什么会发生这个错误?
这里是 msfrpc.py 的源代码: import msgpack import http.client