我正在学习python,我有一个包含5或6个python文件的教程文件夹。其中一个包含正则表达式函数,如file_regex.py
。问题是当我执行文件夹中的任何其他文件时,始终执行file_regex.py
,从而给出file_regex.py
的输出。我没有在任何其他文件中导入file_regex.py。
file_regex.py
导入重新
句子=''' Jessica_is_27岁,而John约为12岁 Stephanie是12岁,Marco是50岁''
年龄= re.findall(r' \ d {1,3}',句子)
names = re.findall(' [A-Z] [a-z] +',句子)test = re.findall(' \ W',句子)
打印(年龄)
打印(姓名)
打印(测试)
这是因为创建了__pycache__
文件夹,其.pyc
文件有file_regex.py
个文件。
regex.cpython-23.pyc
VOU @ sjddlZdZejdeZejdeZejdeZeeeeeedS)NZX Jessica_is_27岁7岁,而约翰12岁但斯蒂芬妮12岁 马可是50年 ž\ d {1,3} Z [AZ] [AZ] + Z \ W)resentencefindallZagesnamestestprintrr!/home/sivasurya/tutorial/regex.pys
我有两个问题:
__pycache__
文件file_regex.py
文件夹
__pycache__
文件夹或此问题的解决方案(我尝试使用python -B file1.py
命令编译python文件,但这不起作用)P.S:我在miniconda环境(python 3.x)工作,如果有帮助的话
答案 0 :(得分:2)
这是因为
__pycache__
文件夹。 。
这是不正确的。 __pycache__
文件夹的存在与文件是否运行无关。它只是保存已编译的文件,没有别的。
如果您的file_regex.py
一直在执行,那是因为其他文件有
import file_regex
或
from file_regex import ...
在他们中间。
答案 1 :(得分:0)
我实际上将文件命名为regex.py
。当我删除__pycache__
文件夹并将文件名更改为file_regex.py
时,__pycache__
文件夹没有再次显示,问题就解决了。
答案 2 :(得分:0)
在我的情况下,我的文件名为“ timeit.py”,因此每次执行该文件时都会创建一个 pycache 文件夹。问题是该文件与模块的名称相同,因此我通过更改文件名解决了该问题。