首页

文章

python中的模块,库,包有什么区别

发布网友 发布时间:2022-03-25 13:32

我来回答

4个回答

懂视网 时间:2022-03-25 17:53

Python是一种跨平台的计算机程序设计语言,python库是指python中的完成一定功能的代码集合,供用户使用的代码组合。

在python中库是包和模块的形式,其中python模块是包含并且有组织的代码片段,python包是一个有层次的文件目录结构,库的概念是具有相关功能模块的集合,这也是Python的一大特色之一,即具有强大的标准库、第三方库以及自定义模块。

Python是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

总结:

Python是一种跨平台的计算机程序设计语言,python库是指python中的完成一定功能的代码集合,供用户使用的代码组合。

热心网友 时间:2022-03-25 15:01

1.python模块是:

python模块:包含并且有组织的代码片段为模块。

表现形式为:写的代码保存为文件。这个文件就是一个模块。sample.py 其中文件名smaple为模块名字。

关系图:

2.python包是:

包是一个有层次的文件目录结构,它定义了由n个模块或n个子包组成的python应用程序执行环境。
通俗一点:包是一个包含__init__.py 文件的目录,该目录下一定得有这个__init__.py文件和其它模块或子包。

常见问题:

引入某一特定路径下的模块

使用sys.path.append(yourmolepath)

将一个路径加入到python系统路径下,避免每次通过代码指定路径

利用系统环境变量 export PYTHONPATH=$PYTHONPATH:yourmolepath,

直接将这个路径链接到类似/Library/Python/2.7/site-packages目录下

好的建议:

经常使用if __name__ == '__main__',保证写包既可以import又可以独立运行,用于test。

多次import不会多次执行模块,只会执行一次。可以使用reload来强制运行模块,但不提倡。

常见的包结构如下:

package_a
├── __init__.py
├── mole_a1.py
└── mole_a2.py
package_b
├── __init__.py
├── mole_b1.py
└── mole_b2.py


main.py

如果main.py想要引用packagea中的模块molea1,可以使用:

from package_a import mole_a1

import package_a.mole_a1

如果packagea中的molea1需要引用packageb,那么默认情况下,python是找不到packageb。我们可以使用sys.path.append('../'),可以在packagea中的__init__.py添加这句话,然后该包下得所有mole都添加* import __init_即可。

关系图:

3.库(library)

库的概念是具有相关功能模块的集合。这也是Python的一大特色之一,即具有强大的标准库、第三方库以及自定义模块。

热心网友 时间:2022-03-25 16:19

你指的是 mole、lib 和 package吧。

mole:一个 .py 文件就是个 mole

lib:抽象概念,和另外两个不是一类,只要你喜欢,什么都是 lib,就算只有个 hello world

package:就是个带 __init__.py 的文件夹,并不在乎里面有什么,不过一般来讲会包含一些 packages/moles

scrapy、flask、Django、numpy、scipy、NLTK、jieba一般都被认为是 lib,因为关注点并不是代码是怎么组织的。

热心网友 时间:2022-03-25 17:54

模块
python模块,Mole,是一个python文件,以.py结尾,包含了python对象定义和python语句。
模块让你能够有逻辑地组织你的python代码段,把相关的代码分配到一个模块里能让你的代码更好用、更易懂。
模块能定义函数,类和变量,模块里也能包含可执行的代码。
使用模块有什么好处?
最大的好处是大大提高了代码的可维护性;其次,编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用,我们在编写程序的时候,也经常引用其他模块,包含python内置的模块和来自第三方的模块。
使用模块还可以避免函数名和变量名冲突。相同名字的函数和变量完全可以分别存在不同的模块中,因此,我们自己在编写模块时,不必考虑名字会与其他模块冲突。但是也要注意,尽量不要与内置函数名字冲突。
包 package
为了组织好模块,将多个模块分为一个包。
包是一个分层次的文件目录结构,它定义了一个由模块及子包,和子包下的子包等组成的python的应用环境。
简单来说,包就是文件夹,但该文件下必须存在__init__.py文件,该文件的内容可以为空。__init__.py用于标识当前文件夹是一个包。考虑一个在package_runoob目录下的runoob1.py、runoob2.py、__init__.py文件,test.py为测试调用包的代码,目录结构如下:
test.py
package_runoob
|-- __init__.py
|-- runoob1.py
|-- runoob2.py

库的概念是具有相关功能模块的集合。这也正是python的一大特色之一,即具有强大的标准库,还有第三方库以及自定义模块。
python中的库是借用其他编程语言的概念,没有特别具体的定义,python库着重强调其功能性。在python中,具有某些功能的模块和包都可以被称作库,模块有诸多函数组成,包由诸多模块机构化组成,库中也可以包含包、模块和函数。
手机导航地图语音怎么下载 如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 锻炼颈椎的几个动作 水多久能结冰 冰能在多长时间内形成 请问水低于0度会结冰吗? 如何防止脱发严重 嘴唇上有黑印用蜜蜡和棉线去除了胡须 软柿子的热量 孕妇可以吃软柿子吗不是西红柿 脆柿子和软柿子的区别 脆柿子好还是软柿子好 软柿子可以多吃吗 “鱼悬洁白振清风”的出处是哪里 用大自然的声音评课好吗? 妇产科博士找超声科工作容易吗 怎能把微信6.2.0版本换回6.1.2版 微信群6.2.4怎么增加人数上限 微信6.2.2如何备份手机通讯录 电脑桌面图标不能放大? 有什么好用的识图软件 识图认人哪个软件最好 手机识图软件什么软件能识别图片位置 小米手机自动锁屏时间怎么修改 小米手机屏幕锁定时间设置教程 能举起100斤算大力吗 中医美容专业是什么 中医美容证有什么用 单声道音频什么意思(开启单声道音频有什么好处) 单声道音频是什么,有什么用处? 户口还未迁移到婆家 娘家户口怎么就没了呢 我结婚没有迁户口,现在娘家也没有怎么办 没领证生的孩子一般会判给谁 没领证生的孩子会判给谁 信用卡卡种有哪些 找一首古风歌曲 男声 低配电脑装w10还是w7流畅 电脑配置低装win7还是win10好 低配电脑适合装WIN7系统还是WIN10系统? ...500s-15isk这个联想笔记本的内存条尺寸是什么型号的有没有知道的... 越快越好.怎样减肥.而且胸部不缩水 请问徐闻县海安长途汽车客运站客服是多少? 过了平台期还会瘦吗 悦耳的意思悦耳的解释 重庆师范大学应用心理学专业的权威性如何? 打印机laserjetm1136mfp怎样设置无线打印 经典电影赏析之1:《精武英雄》 爆米花用的什么玉米 糯玉米哪个好 有机糯玉米的营养价值如何? 四大直辖市换帅原因 ccna认证是什么?那里可以培训? 全自动洗衣机门打不开,怎样解锁? 三星滚筒洗衣机门打不开? 美的洗衣机门锁打不开怎么解决? 海尔滚筒洗衣机门打不开,也不工作? 海尔滚筒洗衣机门打不开怎么办 松下滚筒洗衣机门打不开怎么办 手机版微博可以设置微博水印的位置么? 海尔滚筒洗衣机门打不开,也不工作 excel 分组排序问题 excel 2003如何通过函数实现多条件排名? 家用吊扇开关接线图解只有两条线,怎么接? EXCEL分组排序 美的吊扇接线 excel如何根据排序和关键字实现自动分组? 吊扇开关接线图 如何用电子表格Excel按成绩分组? 各位大神,这吊扇怎么接?这种调速器怎么接线?大神们最好上图解释一下。感激不尽。 Excel怎么分组排序? 吊扇开关怎么接线图解 Python的模块和库的区别是哪些? win10正式版怎么修改默认输入法 python是什么意思? python的库怎么写的 python为什么库依赖 Python中的库都有哪些? win10如何设置默认输入法为英文键盘啊???? win10怎么设置电脑默认输入法 win10怎么设置系统默认输入法 win10系统怎样设置默认输入法 手机关机了有什么方法能查到对方手机的位置?手机关机了有什么办法能查到对方手机?_问一问 人失踪手机关机怎么查手机位置? 鼠标的DPI是什么意思? 手机关机能查到定位吗 人失踪手机关机怎么查手机位置 如何查到手机定位的位置?手机关机还能查到吗? 怎么把微博注销 怎么把微博注销掉啊 怎么能把微博给注销了? 电脑下面的任务栏没了怎么办 window
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com