【问题标题】:How to enable 2to3 in python code directly?如何直接在python代码中启用2to3?
【发布时间】:2013-06-25 10:48:18
【问题描述】:

我有一个 python 脚本,需要使用 -3 选项启动以检查 python 3 的不兼容性。我设法使用以下标签做到了这一点:

#!/usr/bin/python -3

但是因为我需要在virtualenv环境下运行脚本,所以不能在shebang中使用绝对路径,所以我使用了

#!/usr/bin/env python 

它工作正常,除了选项“-3”缺失(因为在这种情况下不能再使用它了)!

有没有办法在代码本身中“激活”这个选项?在代码运行期间启用2to3 警告?

【问题讨论】:

  • Hrm,不幸的是,大多数系统确实不允许您这样做。
  • 不,它不是重复的。我不想用shebang传递参数,我想在python代码本身中启用那些2to3警告,比如import warnings; warnings.enable("2to3")或其他。
  • 对,但没有没有其他方法可以设置该标志。标记器和 AST 代码都需要知道该标志,这意味着它需要在 代码运行之前设置。
  • this thread 中提出了一个解决方案,但它对我不起作用。你能不能只创建一个包含 python -3 $* 的 shell 脚本,然后将你的 she-bang 行指向它?

标签: python python-2.7 python-3.x python-2to3


【解决方案1】:

据我所知,您想问的是“我想将我的默认 python2 解释器更改为 python3”,如果问题是这样,那么我会给出你是一个 VSCode 的例子来做到这一点: 打开 VSCode(我假设您已经安装了要设置为默认值的 python 解释器,这里:我以 python 3.8.2 为例)并在底部左上角你可以看到你的默认python版本点击它并选择你想要设置为默认的那个。

要检查您使用的 python 版本:在 Mac 或 Linux 终端中键入“python --version”。

希望这会对你有所帮助。

【讨论】:

    猜你喜欢
    • 2022-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多