python导包的⼏种⽅法⾃定义包的⽣成以及导⼊详解
python是⼀门灵活的语⾔,也可以说python是⼀门胶⽔语⾔,顾名思义,就是其可以导⼊各类的包,python的包可以说是所有语⾔中最多的。当然导⼊包⼤部分是为了更快捷,更⽅便,效率更⾼。对于刚⼊门的python爱好者来说最初接触的应该是import直接导⼊包的⽅式,例如 import time,就是导⼊了python的time包,这个包中的⽅法可以处理⼤部分我们项⽬中遇到的关于时间的问题。
下⾯我会详细介绍⼏种导⼊包的⽅式(在开发过程中绝对够⽤)以及怎样把其他⽂件夹中的python模块⽣成我们可以应⽤的包。
1.import 常规导⼊,直接导⼊整个包的所有的功能函数。
例如:import time, ⽤import直接导⼊ python的time模块。
2.import多个导⼊,导⼊多个包的所有功能函数。
3.from … import …导⼊整个包的部分功能函数。
第⼀个导⼊的是:导⼊random模块(包)的randint函数。
第⼆个导⼊的是:导⼊time模块(包)的time以及localtime函数,中间⽤,隔开。
4.当然也可以通过from … import * 这个也是直接导⼊包的所有功能。相当于import …
5.重要的,在实际的应⽤中⽤得也是⽐较多的,我们⾃定义我们⾃⼰写的功能包。
下⾯说的详细⼀点。
⾸先在任意路径创建⼀个⽂件夹,来放我们⾃定义的包的⽂件。
我的是创建在/home/xyh/test_package,下边是我的⽬录结构。要在另⼀个不相关的⽂件夹下的python应⽤中引⽤到我们⾃定义的包。就是在/home/xyh/test_package2/use_lucky_package.py中导⼊lucky_package.py这个包,测试直接import lucky_package.py或者直接from test_package import lucky_package.py是不⾏的。
直接导⼊,出现程序运⾏错误提⽰信息:
要想成功导⼊需要做的两步:
第⼀:在test_package⽂件夹中创建_init_.py⽂件,⾥边什么都不需要编辑。
第⼆:在代码中把test_package的⽂件的路径加⼊到python解释器可以搜索到的路径列表中,这⾥就⽤到了python的包sys模块。
下边是运⾏过⼀次的⽬录结构:pyc⽂件是py⽂件编译后⽣成的字节码⽂件,不需要⾃⼰创建,在你第⼀次成功导⼊包并运⾏成功之后会⾃动⽣成。
python解释器下载
下⾯附上lucky_package.py(包程序)以及use_lucky_package.py(引⽤包程序)的简单源码:
lucky_package.py
#_*_coding:utf-8_*_
# 导⼊random模块,我们要制作的包要⽤
import random
# 定义⾃定义包模块的简单功能
def test():
print(random.randint(1,10))
return('hello world')
use_lucky_package.py
#_*_coding:utf-8_*_
import sys
# 动态添加test_package⽂件夹的路径,为了能让此⽂件夹下的
# ⾃定义包成功的导⼊
# 要根据你⾃⼰的实际包的模块来决定路径。
sys.path.append('../')
# 打印所有python解释器可以搜索到的所有路径
print(sys.path)
# 导⼊⾃定义包
from test_package.lucky_package import *
# 输出lucky_package中test函数的结果:
result = test()
print(result)
运⾏以上代码结果:
其实对于不经常使⽤python的使⽤者来说,导⼊模块可能是个很头疼的事情,他们并不知道python的导⼊包的机制其实是⾮常灵活的,当你⼤概知道了python解释器是怎样去查并引⽤这些包的时候,那么你写的所有程序功能都可以作为包来供你调⽤,只要你开⼼。希望通过本篇⽂章能够帮助解决在python使⽤中因为导包⽽带来的困扰。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。