# import day1.py
# print(day1.py)
#上面导入无法找到导入模块,抛异常
import sys
print(sys.path)# 模块搜索目录列表, pycharm会多输出一个当前项目路径,但服务器执行时该路径不存在
# 不在本列表可追加
path = '/Users/jerry/code/test/selenium/'
sys.path.append(path)
import day1 as D# 添加路径后可正常导入,可起别名
print(D)
#导入顺序:内置、扩展、自定义
print(sys.modules)# 已导入的模块
# from …… import …… 导入某个文件下的某一个函数
# from …… import * 导入某个文件下所有函数
#!!!严禁循环引用
#.pyc 文件,导入模块第一次执行时会自动生成一个.pyc 字节码文件
#之后加快启动效率,且不影响执行效率
#修改会自动更新
#包:文件夹,包含 .py 文件及 __init__.py
# 导入包相当于执行包下的__init__.py 文件,所以需要使用包内模块,需要在init文件中导入
# 1、
from test.test1 import T1_1 as T1 # 绝对引用,使用别名
T1.T1_1()
# 2、
from test.test1 import test1_1
test1_1.T1_1_1.T1_1_1() #目录下init包含相对引用,但包含相对引用的文件不能直接执行
# 3、
import test
test.T2_1.T2_1() # 相对引用 * 结合 all,可越级访问
#__name__ 直接执行输入 __main__ 导入包内输出当前包名
print(__name__)# __main__
print(test.dome)# <module 'test.dome' from '/Users/jerry/code/test/selenium/test/dome.py'>