import mod1
mod1.funca()
print(mod1.var)
# from
from mod1 import *
funca()
print(var)
import modabcde as m
m.var
import pack.sub
print(pack.sub.var)
from pack import sub
sub.var
from pack import *
sub.var
下面是对应目录和路径 是同级的
一个文件就是一个模块 包的话 一个目录是一个包
import 如果有 __init__.py 那么import的时候 会执行这个文件里程序
__all__=["sub"] 只包含sub这个文件进去 好处是某些接口不对外公开
最后总结就是 如果 直接 import的话 那么你在调用的时候 需要带上import的模块名(文件名)
如果from 模块 import (*或者里面的函数名啥的 ) 可以直接调用函数 不加模块名
模块名
print(__name__)
如果自己调用自己 输出的位 __main__
被其他的文件 import 这个 文件的话 输出的 本文件的文件名
如果metmode.py
print(__name__)
那么2.py
import metmode
再运行 2.py的话 print(__name__) 输出的就是 metmode