虽然用了Python 有一段时间了,但是还是会遇到各种小问题,感觉Python语法很琐碎,不如cpp凝练,不过确实也非常简单。
首先这个问题以下几个原因
- 模块的命名:不能和常用的标准库或类型冲突,如定义为’int.py’; ‘math.py’, ‘data.py’, 'numpy.py’等等都是存在问题的。
- 导入方式不对:如果你定义的模块名为
dataset.py
,且你想把里面所有的函数都导入进来,则
from dataset import *
#只导入单个函数
from dataset import fun1
- 注意模块命名的规范性,不要以数字开头
补充:如果只想将模块内的部分函数开放给外界调用,则可以在模块头部加上
# dataset.py
__all__=["fun1","fun2","fun3"]
def fun1():
pass
def fun2():
pass
def fun3():
pass
def fun4():
pass
def fun5():
pass
...
# main.py
from dataset import *
# 则main中只能调用fun1, fun2, fun3三个函数,其他函数如 fun4, fun5 不可调用