为什么我的python脚本即使保存了也没有更新?

为什么我的python脚本即使保存了也没有更新?,python,import,permissions,directory,save,Python,Import,Permissions,Directory,Save,公平地说,我是一个相对缺乏经验的程序员,所以我的术语可能并不完美 首先,我从Github克隆了一个存储库,它有一个具有以下结构的目录: main -> dir1 -> script1.py -> dir2 -> script2.py 其中,foo包含一个名为“class”的类,该类实现了在script2.py中调用的方法foo() script1.py ------------------- class Class:

公平地说,我是一个相对缺乏经验的程序员,所以我的术语可能并不完美

首先,我从Github克隆了一个存储库,它有一个具有以下结构的目录:

main  
   -> dir1  
      -> script1.py  
   -> dir2
      -> script2.py
其中,foo包含一个名为“class”的类,该类实现了在script2.py中调用的方法foo()

script1.py
-------------------
class Class:
    def __init__(self):
      ...
    def foo(self):
      ...

这将按预期工作,并打印出类的所有方法,包括foo

真正的问题是,无论我如何更改script1.py,尽管文本似乎已经保存,但如果我运行script2.py(pythonscript2.py),dir(test)总是产生相同的结果

例如,如果我要从script1中删除foo方法并用bar()方法替换它,文件将正确保存,但当我运行script2时,dir(test)仍将在类的方法中显示foo,而不会显示bar。
同样test.foo()也可以工作,但是test.bar()不能工作,即使foo不再是类的方法,而bar是

到目前为止我所做的:

  • 再次克隆存储库
  • chmod-R 777干管,然后再进行任何更改
  • 我已经在git上添加了这些更改,但是它没有改变script2的功能
  • 我使用了多个文本编辑器,包括gedit、emacs、nano和Geany,但它们都没有产生不同的结果
我的操作系统是Ubuntu 16.04LTS,我以前从未遇到过这个问题


请告诉我是否还有其他信息需要提供,或者是否需要重试。

我认为问题在于您的目录结构

如果您有主目录,即克隆的repo,我们将其称为
main\u repo
,还有一个脚本
script1.py
,并且您希望从另一个文件夹中的
script2.py
导入内容,它应该如下所示

main\u repo
-->脚本1.py
-->其他文件夹
-->脚本2.py


然后在
script1.py
的顶部,从
script2.py
ClassName
所在的其他文件夹导入ClassName写入
,您是否尝试删除
*.pyc
文件?只是尝试了一下,没有骰子。这些目录中是否有
\uu init\uuuu.py
script2.py
------------------------
    from dir1 import Class
    test = Class()
    print(dir(test))