每次运行文件夹中的任何其他文件时都会执行__pycache__文件夹

时间:2015-08-31 15:46:43

标签: python regex python-3.x memcached miniconda

我正在学习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

我有两个问题:

  1. 为什么仅为__pycache__文件
  2. 创建file_regex.py文件夹
  3. 如何删除__pycache__文件夹或此问题的解决方案(我尝试使用python -B file1.py命令编译python文件,但这不起作用)
  4. P.S:我在miniconda环境(python 3.x)工作,如果有帮助的话

3 个答案:

答案 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 文件夹。问题是该文件与模块的名称相同,因此我通过更改文件名解决了该问题。