Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
设置Python模块的属性而不是文件名_Python_Package - Fatal编程技术网

设置Python模块的属性而不是文件名

设置Python模块的属性而不是文件名,python,package,Python,Package,我对打包Python还不熟悉,所以不确定使用什么搜索词 在我的包中,有一个\u checksum.py # _checksum.py class Add(): def __init__(self, x, y): self.x = x self.y = y def answer(self): return self.x + self.y 所以要使用它们,我必须导入文件名 import MYPACKA

我对打包Python还不熟悉,所以不确定使用什么搜索词

在我的包中,有一个
\u checksum.py

# _checksum.py

class Add():
     def __init__(self, x, y):
           self.x = x
           self.y = y
    
     def answer(self):
           return self.x + self.y
所以要使用它们,我必须导入文件名

import MYPACKAGE
import MYPACKAGE._checksum as checksum

test = checksum.Add(3, 4)
test.answer()    #7

所以我的问题是,有没有一种方法可以将alias设置为MYPACKAGE。_checksum,可能类似于MYPACKAGE导入checksum的

Python在导入模块时非常依赖文件名,只是为了让它更直观。但是,如果是针对包用户,您可能可以这样做

# MYPACKAGE/__init__.py
import ._checksum as checksum
因此,当您的用户使用您的软件包时,他们可以

# Application code
from MYPACKAGE import checksum

你必须在某个地方使用文件名是的,我的问题是,是否有办法在某个设置文件中设置属性,这样导入命令就不会显示文件名?谢谢,这很简单。