Python的import用法怎样,相关知识有哪些
Admin 2022-11-24 群英技术资讯 803 次浏览
今天小编跟大家讲解下有关“Python的import用法怎样,相关知识有哪些”的内容 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了相关资料,希望小伙伴们看了有所帮助。import 模块名,这时python可以引入以下两种模块; 举例如下:
备注: import 模块名 as 别名;可以给引入的模块一个别名,方便使用;
以 random 模块举例: 我们知道,random 是一个包的名字,在random包中有很多函数,例如:random(), randint() 等;下面讲一下两种引入方式用法上的不同:
文件结构如下:其中每个A.py, B.py, C.py 文件中的内容为定义一个函数 fun() 打印文件名; 整个目录路径为:D:\PY_useful\import_intro
│ ├─ A │ └─ A.PY │ ├─ B │ └─ B.PY │ └─ B_2 │ └─ B_2.PY │ └─ C └─ C.PY.py文件中的代码:
# A.py def fun(): print('It is A.py') # B.py def fun(): print('It is B.py') # C.py def fun(): print('It is C.py')在B_2.py 中引用A.py 中的fun();
# 错误的做法: # 这时候,由于B_2.PY 在文件夹B_2中,所以按照相对引用来解析地址,我们会写出以下代码: from ...A import A # . 表示当前目录,.. 表示父目录, ...表示父目录的父目录;这是会报错:ValueError: attempted relative import beyond top-level package; 相对引用就会出现这样的错误,解决办法如下: 在环境变量地址中,加入顶级目录的路径,然后从高向低引用;
import sys print(sys.path) # 添加前的环境变量列表 sys.path.append(r'D:\PY_useful\import_intro') # 添加顶级目录 print(sys.path) # 添加后的环境变量列表 # 方法一: from A import A # 可以直接导入A包中的A模块 A.fun() # 输出:It is A.py # 方法二: from A.A import fun # 可以直接导入A包.A模块 中的fun 函数 fun() # 输出:It is A.py在C.py中引用B_2.py 模块;
# B_2.PY 的内容如下: import sys sys.path.append(r'D:\PY_useful\import_intro') from A import A A.fun() # 输出:It is A.py from A.A import fun fun() # 输出:It is A.py def fun(): print('It is B_2')方法一:引用模块
from B.B_2 import B_2 B_2.fun() # 或者: from B.B_2.B_2 import fun fun()输出:
It is A.py # 在引入模块的时候,会执行一次模块的内容,所以这里输出了两次 It is A.py It is A.py It is B_2前期准备:为说明引入的方法,我们先在:D:\PY_useful文件夹中创建文件夹 File_4,File_4中创建M4.py文件,M4.py 中的内容为:
# M4.py 的内容; def Func4(): print('In Func4')如果想在别的地方,引用这里的Func4() 函数,有两种方法:
首先需要将模块所在的路径(D:\PY_useful\File_4),加入环境变量路径中,然后通过引用模块,来使用Func4()函数; a. 引入模块,然后通过模块调用函数
import sys path_add = r'D:\PY_useful\File_4' # 模块所在的路径 sys.path.append(path_add) # 把路径添加到环境变量中 import M4 M4.Func4()b. 直接引入模块中的函数
import sys path_add = r'D:\PY_useful\File_4' # 模块所在的路径 sys.path.append(path_add) # 把路径添加到环境变量中 from M4 import Func4 Func4()首先需要将包(我们把File_4当作包)所在的路径(D:\PY_useful),加入环境变量路径中,然后通过引用包,来使用模块,再通过模块调用Func4()函数;
备注:当程序不能把文件夹当作包时,在文件夹中建立空的py文件,文件名修改为: __init__.py , 有了这个空文件,文件夹会被python程序理解成包;
a. 通过包,引入模块来调用函数;
import sys path_add = r'D:\PY_useful' # 包所在的路径 sys.path.append(path_add) # 把路径添加到环境变量中 from File_4 import M4 M4.Func4()b. 通过包,引入模块,再引入指定函数;
import sys path_add = r'D:\PY_useful' # 模块所在的路径 sys.path.append(path_add) # 把路径添加到环境变量中 from File_4.M4 import Func4 Func4()想要解决函数名冲突,我们必须先明白Python的搜索模块顺序,python 按照顺序搜索模块,找到匹配项便会直接返回,不再向后查找,所以当有函数名相同的情况发生时,先被找到的函数会被执行;
上面的顺序,使用sys.path 就可以看到,不需要记,记住sys.path 就可以啦~;
import sys for i in sys.path: print(i)输出:
D:\PY_useful\import_intro\F1\F2 # 这是 .py 文件所在的位置 D:\PY_useful\import_intro # 这是 项目目录 C:\ProgramData\Anaconda3\python36.zip #下面这几个是python自己的目录 C:\ProgramData\Anaconda3\DLLs C:\ProgramData\Anaconda3\lib C:\ProgramData\Anaconda3 C:\ProgramData\Anaconda3\lib\site-packages # 下面是安装模块的目录 C:\ProgramData\Anaconda3\lib\site-packages\win32 C:\ProgramData\Anaconda3\lib\site-packages\win32\lib C:\ProgramData\Anaconda3\lib\site-packages\Pythonwin
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
django migrate报错如何解决?要解决django migrate报错的问题,首先我们需要了解migrate做了什么事情,了解报错的情况等等这些,因此下面我们一步步来解决django migrate报错的情况。
本文主要介绍了jmeter执行python脚本的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要为大家介绍了python的循环,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助<BR>
这篇文章主要介绍了Pytorch用Tensorboard来观察数据,上一篇文章我们讲解了关于Pytorch Dataset的数据处理,这篇我们就来讲解观察数据,下面具体相关资料,需要的朋友可以参考一下,希望对你有所帮助
这篇文章介绍了使用Django框架创建项目的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008