Python模块有何用处,导入格式是怎样的
Admin 2022-10-08 群英技术资讯 212 次浏览
1.如何理解模块
模块可以看成一个完整的功能非常强的大代码体 使用了模块就相当于你也有这个功能了
使用模块编程就相当于站在巨人的肩膀上(智能语音 人工智能机器学习......)
2.模块分类
1>.内置模块
内置模块就是python自带的可以直接调用的模块
eg:import time
time.sleep(3) 让计算机等待三秒再运行
2>.自定义模块
自定义模块肯定就是自己写出来的模块了
eg: 注册功能 登录功能......
3>.第三方模块
第三方就是大佬们将已经写好了的发布在网上我们之间直接CV战士即可
eg: 图像识别 图形可视化 语音识别
3.模块的表现形式
1>.py文件(py文件也可以称之为是模块文件)
2>.含有多个py文件的文件夹(按照模块功能的不同划分不同的文件夹存储)
3>.已被编译为共享库或DLL的c或C++扩展(了解)
4>.使用C编写并链接到python解释器的内置模块(了解)
基本格式1 import句式
import LebronJames 导入LBpy文件
print(LebronJames.point) 通过句点拿到LB里面的变量名
print(LebronJames.read1) 通过句点拿到LB里面的变量名
LebronJames.read1() 通过句点拿到LB里面的函数调用
基本格式2 from...import...句式
from LebronJames import point 指名道姓的导入point变量名
print(point) 不用通过句点即可直接使用
point = 62323 新建一个变量名point
print(point) 这时候就是62323了把之前的关系断了
import
优点:可以通过md句点方式使用到模块里面所有的名字 并切不会冲突
缺点:md什么都可以点 有时候并不想让所有的名字都能被使用
from....import
优点:可以指定出自己想要的那单独一个名字 不用添加md前缀
缺点:名字及其容易产生冲突(绑定关系被修改)
1.重命名
1>.当导入多个模块名字冲突的时候
import LebronJames as LB
通过 后面加上as和新的名称即可直接句点调用
from LebronJames import point as LB
也是通过后面加上as新的名称就可以直接调用
2>.原有的模块文件名太长复杂可读性不强
import LBLBLBLBLBLB as LB
通过 后面加上as和新的名称即可直接句点调用
2.导入多个名字
1>.import LB,point,read1,read2
方式1建议多个模块功能相同功能才能适应 不相似尽量分开导入
import either 其他功能模块
2>.from LB import point,read1,read2
方式二导入方式是推荐使用的 因为多个名字出自于一个模块文件
3.全导入
需要使用模块名称空间中很多名字 并且只能使用from...import句式
from LebronJames import * *表示所以名字
ps:针对*号的导入还可以控制名字的数量
在模块文件中可以使用__all__ = [字符串的名字]控制*能够获取的名字
控制名称仅限制*号全部的模式下使用
1.如何理解循环导入
循环导入就是两个文件彼此导入对方的名字
2.循环导入容易出现报错现象
使用彼此的名字可能是在没有准备好的情况下就使用了
3.如何解决循环导入保存现象
在调用彼此的名字之前就定义好名字 相当于函数 先定义后调用的原理
所有的py文件中都自带一个__name__内置名
当py文件是执行文件的时候 __name__的结果是__main__
当py文件是被导入文件的时候 __name__的结果是模块名(文件名)
1.导入一个文件 然后在导入过程中删除该文件 发现还可以使用
import LebronJames 导入文件
import time 导入时间模块
time.sleep(15) 等待15秒在运行
print(LebronJames.point) 打印LB里面的point
'''该过程中删除了文件 但是结果还是不报错 如果再来一次 就会报错了 '''
2.创建一个跟内置模块名相同的文件名
import time 导入时间模块
print(time.time()) 获取当前时间戳
from time import name 导入相同的名字
print(name)
'''如果命名跟原本内置的模块一样则最终结果报错 所以禁忌取相同的名称'''
3.导入模块的时候一定要知道谁是执行文件 所有的路径都是参照执行文件来的
当我们模块内容不在一个层级里面 我们可以使用添加路径来寻找即可
import sys
sys.path.append(r'/Users/macbookpro/PycharmProjects/import/LebronJames.py')
import LebronJames
print(LebronJames.point)
4.主要查找顺序
先从内存空间中查找>>>再从内置模块中查找>>>最后取sys.path查找相当于我们之前学习
的环境变量 如果上述三个地方都找不到 那么就会之直接报错
到此,关于“Python模块有何用处,导入格式是怎样的”的学习就结束了,希望能够解决大家的疑惑,另外大家动手实践也很重要,对大家加深理解和学习很有帮助。如果想要学习更多的相关知识,欢迎关注群英网络,小编每天都会给大家分享实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
今天我们先讲一下编写python脚本处理json的核心功能,有些散乱,后期在进行整体脚本的编写,对python json字典关系相关知识感兴趣的朋友一起看看吧
这篇文章主要介绍了在python中设置柱状图参数的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
人工智能用Python语言,因为它有以下几点优势,优质的文档,Python极其容易上手,因为Python有极其简单的说明文档;平台无关,可以在现在每一个Lnix版本上使用,由于它的开源本质,Python已经被移植在许多平台上;
Python内置函数-print() 函数。print() 方法用于打印输出,最常见的一个函数。
这篇文章主要介绍了pytorch交叉熵损失函数的weight参数的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008