我已将文件common.py
导入copyPasteAnywhereTest.py
文件。 common.py
在其中定义了一些我需要在当前文件中调用的常用函数。 copyPasteAnywhereTest.py
。但是我在两个文件中都定义了一个特定的函数copyText()
。默认情况下,正在调用copyText()
中的common.py
。我想调用我在本地定义的函数,而不是我在导入文件中定义的函数。代码如下所示:
这是一个文件common.py
#common.py
def copyText():
#Function definition
#Some more functions defined in this file.
这是脚本文件copyPasteAnywhereTest.py
#copyPasteAnywhereTest.py
import os
import sys
sys.path.append(os.path.abspath("../z_common/"))
import common
def main():
#some code
copyText() #Calling the copyText() function
def copyText():
#Code here.
来自copyText()
的 common.py
是否使用import common
或from common import functionName
最简单的解决方案是更改copyText()
中copyPasteAnywhereTest.py
的名称并调用相同的名称。但我想知道正确的解决方案,而不是解决方法。
为了清楚起见,我在使用copyText()
语法时,甚至没有在copyPasteAnywhereTest.py
(即from common import copyText
)中导入from module import function
函数。我刚刚使用from common import *functionName*
导入了所需的函数。
P.S。 - 我对Python很新。如果问题是愚蠢的,请不要介意。我曾尝试使用谷歌搜索和搜索互联网,但我无法找到答案。因此,问题。
答案 0 :(得分:2)
而不是像这样导入:
from common import copyText
DO
import common
并在您的代码中为它添加模块名称和一个点:
result = common.copyText()
通过仅导入模块,并使用点分表示法引用其内容,可以防止模块命名空间中出现这些名称冲突。