Python基础42:模块的搜索路径优先级、sys应用

# **************************************************************************
# Python学习
# **************************************************************************
# ** 所属主题: 模块
# ** 所属分层: 42 模块的搜索路径优先级
# ** 功能描述: 42 模块的搜索路径优先级
# ** 创 建 者: 陈红伟
# ** 创建日期: 2021/4/18 6:57 下午
# **************************************************************************
# ** 修改日期     修改人    修改内容
# ** 2021/4/18   陈红伟    新增学习内容代码
# **************************************************************************

"""
1、模块查找优先级
"""
# 无论是import还是from ... import 在导入模块是都涉及查找问题
# 优先级:
# 1、内存(内置模块)
# 2、按照sys.path中存放的文件的顺序依次查找要导入的模块

import sys

print(sys.path) #  ['/Users/chenhongwei/PycharmProjects/python-learn/Egon202003/01 python基础', '/Users/chenhongwei/PycharmProjects/python-learn', '/Library/Frameworks/Python.framework/Versions/3.8/lib/python38.zip', '/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8', '/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/lib-dynload', '/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages']
# 值为一个列表,存放了一系列的文件夹,其中第一个文件夹是当前执行文件所在的文件夹

print(sys.modules.__contains__('foo')) # False  # sys.modules 看当前加载进内存中的模块有哪些,这里返回False,说明foo还没被加载进内存

import foo  # 将foo加载到内存中了
foo.f() # 1
print(sys.modules.__contains__('foo')) # True

import foo # 从内存中找foo
foo.f()
print(sys.modules.__contains__('foo')) # True


"""
2、sys的应用
"""
# 把foo.py对应的文件夹临时加入sys.path中去:append()
sys.path.append('/Users/chenhongwei/PycharmProjects/python-learn/Egon202003/01 python基础/foo.py')



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值