Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2to3不';不存在并且可以';t在Ubuntu上安装脚本_Python_Ubuntu - Fatal编程技术网

Python 2to3不';不存在并且可以';t在Ubuntu上安装脚本

Python 2to3不';不存在并且可以';t在Ubuntu上安装脚本,python,ubuntu,Python,Ubuntu,目前我正在运行版本为3.6.5的python3。不幸的是,我遇到了一个包含大量python2的Python文件,我只想将所有内容转换为python3。我一直在网上看到这个名为2to3的软件包,但它根本不存在于我的电脑上 下面是Python文档中提到2to3的部分内容: 不幸的是,每当我在终端中运行查找工具/脚本时,我什么也得不到。甚至连2to3的PyPI包都没有。我获得这个2to3脚本的最佳方式是什么 注意:我使用的是zsh shell,但这可能不重要。2to3与python安装在同一文件夹中

目前我正在运行版本为3.6.5的python3。不幸的是,我遇到了一个包含大量python2的Python文件,我只想将所有内容转换为python3。我一直在网上看到这个名为2to3的软件包,但它根本不存在于我的电脑上

下面是Python文档中提到2to3的部分内容:

不幸的是,每当我在终端中运行
查找工具/脚本时,我什么也得不到。甚至连2to3的PyPI包都没有。我获得这个2to3脚本的最佳方式是什么


注意:我使用的是zsh shell,但这可能不重要。

2to3
与python安装在同一文件夹中

如果通过键入2to3,您得到了未找到的
命令
请尝试以下操作

which python --> to get the python executable path (in my case `/Users/newbie/bin/python`)
然后检查是否存在

ls /Users/newbie/bin | grep 2to3

如果是这种情况,您可以创建一个别名,它与python安装在同一文件夹中

如果通过键入2to3,您得到了未找到的
命令
请尝试以下操作

which python --> to get the python executable path (in my case `/Users/newbie/bin/python`)
然后检查是否存在

ls /Users/newbie/bin | grep 2to3

如果是这样的话,您可以创建一个别名,作为默认安装
python3
的一部分,较新的debian发行版(包括ubuntu)不再包含
2to3
(以及随后的
lib2to3

它已拆分为一个单独的软件包,可按如下方式安装:

sudo apt install 2to3

较新的debian发行版(包括ubuntu)不再将
2to3
(以及随后的
lib2to3
)作为
python3
默认安装的一部分

它已拆分为一个单独的软件包,可按如下方式安装:

sudo apt install 2to3


只需在命令行中键入
2to3
,这就是问题所在。命令2to3不存在。
2to3
应与随python分发的
python
二进制文件位于同一目录中。你使用的是什么操作系统?确保在shell命令行而不是python命令行上运行2to3。我使用的是Linux Ubuntu 18.04。我查看了二进制文件,但根本没有找到脚本。我还在终端中运行2to3,而不是通过解释器。只需在命令行中键入
2to3
。这就是问题所在。命令2to3不存在。
2to3
应与随python分发的
python
二进制文件位于同一目录中。你使用的是什么操作系统?确保在shell命令行而不是python命令行上运行2to3。我使用的是Linux Ubuntu 18.04。我查看了二进制文件,但根本没有找到脚本。我还在终端上运行2to3,而不是通过解释器。嗯,实际上我可以将别名设置为/usr/bin/2to3-2.7,这可以解决我的问题。通过设置别名可以解决问题。谢谢大家!@这将运行Python 2.7附带的
2to3
版本,而不是Python 3.6附带的版本。我认为这在今天不会是一个问题,但在一年半后,当他们停止将更改反向移植到2.7时,可能会是一个问题。(另一方面,他们也可能只是停止更新2to3,在这种情况下您就可以了。)当您运行2to3时,您应该检查更改(使用diff工具)并在3中测试您的脚本以确认。如果您的脚本不太庞大,或者包含太多特定于版本的语法点,那么如果您运行的是一个相对较旧的2to3转换,这应该无关紧要。这些差异更可能是“边缘情况”,和/或需要手动解决的问题。嗯,实际上我可以将别名设置为/usr/bin/2to3-2.7,这可以解决我的问题。通过设置别名可以解决问题。谢谢大家!@这将运行Python 2.7附带的
2to3
版本,而不是Python 3.6附带的版本。我认为这在今天不会是一个问题,但在一年半后,当他们停止将更改反向移植到2.7时,可能会是一个问题。(另一方面,他们也可能只是停止更新2to3,在这种情况下您就可以了。)当您运行2to3时,您应该检查更改(使用diff工具)并在3中测试您的脚本以确认。如果您的脚本不太庞大,或者包含太多特定于版本的语法点,那么如果您运行的是一个相对较旧的2to3转换,这应该无关紧要。这些差异更可能是“边缘案件”,和/或需要手动解决的问题。