目前,我正在使用Python 3.4。如何在不编辑命令行的情况下避免.pyc
或.pyo
个文件(__pycache__
)?
以下命令完美无缺
使用终端:python3 -B something.py
但是这些在Python 3中不起作用(或者它们是??):
import os
os.environ['PYTHONDONTWRITEBYTECODE'] = "whatever"
根据instructions,如果它被设置为非空字符串,它应该工作。但我无法做到。
我错过了什么?
答案 0 :(得分:3)
我认为必须在Python解释器启动之前设置环境变量。在Python脚本中设置它似乎为时已晚(解释器已经加载了脚本并生成了字节码文件)。
答案 1 :(得分:1)
环境变量在启动时由可执行文件读取。在脚本中设置它对当前解释器没有任何影响。您必须在运行可执行文件之前执行此操作。
答案 2 :(得分:0)
检查这个..在执行前设置env变量 出口PYTHONDONTWRITEBYTECODE ="" 在.bashrc中设置它 或别名python3 =" python3 -B"
但是你会在导入的模块级别获得python3的 pycache 文件夹
答案 3 :(得分:0)
Python 3将在里面创建与版本相关的编译python的__pycache__
目录。 .pyc
来自Python 2。
您需要在启动python时在命令行或环境中指定此项,而不是在之后。但如果您正在支持shebang行的环境中编写可执行脚本,您可以执行以下操作:
#!/usr/bin/env python3 -B
PYTHONDONTWRITEBYTECODE=1
环境变量。