-
自定义模块
2020-07-13 21:10:39自定义模块非重点。 定义模块的意义:把自己写的模块方法放入到系统模块中,下次使用的时候可以像调用系统方法一样方便调用。 自定义模块的发布,安装 1.发布安装自定义的包、模块到系统目录 创建要发布的包(包中...自定义模块非重点。
定义模块的意义:把自己写的模块方法放入到系统模块中,下次使用的时候可以像调用系统方法一样方便调用。自定义模块的发布,安装 1.发布安装自定义的包、模块到系统目录 创建要发布的包(包中包含对应的模块) 在统一目录中创建setup.py模块 setup.py文件中的内容 from distutils.core import setup setup(name='压缩包的名字',‘*version='版本号',description = "描述",author = "作者”*,py_modules=[‘包名1.模块1',‘包名1.模块2','包名2.模块1’]) 斜体为非必要数据 2. 找到文件所在位置,执行以下两个命令 2.1 构建模块 使用DOS命令 通过cd 找到需要构建模块的文件所在位置 dir 在DOS命令下查看当前目录下的所有文件信息 python setup.py build 系统创建了一个build的包(文件夹) 2.2 执行打包 python setup.py sdist 系统创建dist包——内含自定义模块的压缩包(要用的就是它) 以及MANFEST文件 安装的方式: 1.找到模块的压缩包 2.解压 linux下用解压命令,tar zvxf*.tar.gz windows下直接解压 在DOS命令下 1.1找到模块的压缩包 3..进入解压后的文件夹 ——文件夹内有setup.py 执行 python setup.py install
判断是否写入可调用
安装位置在 系统文件中的site-packages中 -
python如何自定义模块_Python如何自定义模块?Python基础教程,第十讲,自定义模块...
2020-12-01 04:28:35学完此次课程,我能做什么?通过此次课程,我们将学会如何自定义自己的模块和包,以及如何引用到自己的项目中,从而实现代码的复用。学习此次课程,需要多久?...自定义模块与当前代码同目录自定义模块hello.py 与...学完此次课程,我能做什么?
通过此次课程,我们将学会如何自定义自己的模块和包,以及如何引用到自己的项目中,从而实现代码的复用。
学习此次课程,需要多久?
5-10分钟
课程内容
什么是Python的标准库?
Python在标准安装中,还带了一组模块他们就是标准库。简单地说就是系统自带了一些方便我们使用的方法,他们统称为标准库。
Python如何自定义模块?自定义模块与当前代码同目录
自定义模块hello.py 与 1.py同一目录
hello 模块中 定义了一个模块方法
使用模块:
优点:不需要额外的配置,在同目录下,直接和使用内部模块一样 导入即可使用。
缺点很明显:模块存在的意义在提高代码的复用性,使多个程序可以共享代码,如果每个模块都要单独放在相应的程序下,与出发点有点背道而驰,所以不建议大家使用此方法,了解一下即可。在Python代码中指定模块位置
首先在/home/dely/github/python/library2目录下定义一个模块run.py
在下面的Demo中使用run模块中的hi函数
优点:公共模块可以同一管理,无需放在项目所在目录下,提高的复用性。
缺点:引用前,需制定模块所在位置。通过环境变量指定,python模块所在位置
上图中,我已经把PYTHONPATH添加到环境变量中,如何制定环境变量不在这里说了,大家根据自己系统版本去谷歌或者百度吧。
配置好环境变量后,在library目录下写一个fly模块
在下面的Demo中使用fly模块的 hi 函数
优点:代码复用,无需在代码中制定模块路径,无多余代码,和使用标准库一样
缺点:移植性差,不同的电脑需要配置环境变量
以上三种常用方法,大家可以按照自己的需求使用。
考虑一个问题?
按照上面的方法,管理一个小的项目完全没有问题,但是有没有考虑一下,如果我们有1000个不同功能的模块,怎么办?全部放在一个文件夹?
答案肯定是NO.
我们这个时候就需要使用包,来管理我们的模块。
为了演示方便,我直接放在和项目同目录下,先看一下目录结构:
eat 和 say 模块都只有一个hi方法。
重点要注意的图上已经标明了。
import 导入的包,必须使用包.模块名.方法名 使用
from..import 方式导入的包,可以直接使用模块名.方法名 使用
小结
本次课程我们主要学习如何自定义模块,自定义包,以及如何导入自定义的包。使用过程中还会有一些坑,大家在练习的时候,踩踩看吧。
接下来学习什么?
下一课,我们讲学习常见的Python内置模块。只有熟悉了常用的模块和方法,我们在做项目的时候才能游刃有余,灵活使用。
关注公众号,回复 Python基础 下载全部代码+PDF版电子书
-
python怎样制作自定义模块_python怎么自定义模块
2020-11-30 10:08:56Python模块是一个Python文件,以....定义模块新建一个文件夹存放将要定义的模块,然后在该文件夹下建立一个py文件,此py文件就是我们定义的模块import语句自定义模块可以采用import语句来进行引入,其操作步骤是先导...Python模块是一个Python文件,以.py结尾,包括了Python对象定义和Python语句,能让Python代码段更有逻辑性、更好用、更易懂。既然Python模块有这么多好处,那么该如何引用Python模块呢?
定义模块
新建一个文件夹存放将要定义的模块,然后在该文件夹下建立一个py文件,此py文件就是我们定义的模块
import语句
自定义模块可以采用import语句来进行引入,其操作步骤是先导入模块,再调用模块中包含的函数,可将自定义模块放入当前目录,便于解释器路径搜索,以下是导入自定义hello.py模块,并调用World函数的实例:
导入模块import hello
现在可以调用模块里包含的函数了support.print_func("World")
输出结果为:Hello World!
以上实例也可以采用from…import的方法进行实现,是指从一个模块中导入指定的部分到当前命名空间中,以上功能可写成:from hello import World
如果要将模块中的所有内容全部导入当前命名空间,可采用from…import*的方法,具体实例如下:from hello import *
还需注意,当要导入一个模块时,Python解释器会对模块的位置进行搜索,具体搜索顺序规律如下:
1、当前目录
2、如果不在当前目录,Python 则搜索在 shell 变量 python path 下的每个目录
3、如果都找不到,Python会察看默认路径
以上就是python怎么自定义模块的详细内容,更多请关注php中文网其它相关文章!
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
-
python 自定义模块路径_python导入不同目录下的自定义模块过程解析
2020-12-03 04:59:39这篇文章主要介绍了python导入不同目录下的自定义模块过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下一、代码目录结构自定义的模块在Common包下,...这篇文章主要介绍了python导入不同目录下的自定义模块过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
一、代码目录结构
自定义的模块在Common包下,Study文件下SelectionSort.py文件导入自定义的模块
二、源码
2.1:SelectionSort.py文件
python导包默认是从sys.path中搜索的。
sys.path结果如下:['D:\\PyCharm\\source\\Study', 'D:\\PyCharm\\source', 'D:\\PyCharm\\source\\venv\\Scripts\\python36.zip', 'D:\\Python\\Python36\\DLLs', 'D:\\Python\\Python36\\lib', 'D:\\Python\\Python36', 'D:\\PyCharm\\source\\venv', 'D:\\PyCharm\\source\\venv\\lib\\site-packages', 'D:\\PyCharm\\source\\venv\\lib\\site-packages\\setuptools-40.8.0-py3.6.egg', 'D:\\PyCharm\\source\\venv\\lib\\site-packages\\pip-19.0.3-py3.6.egg']
从结果中可以看到,并没有Common,也就是说直接是不能导入Common下的模块的(即:不能写成from CreateData import createData)。处理方式如下:
2.1.1:
from Common.CreateData import createData
from Common.Swap import swap
2.1.2
sys.path.append('../Common')
from CreateData import createData
from Swap import swap
说明:网上大多数是第二种,将自定义模块路径加入到sys.path中,未找到第一种,这个可能是版本差异?前辈们用的python2.x,不支持包名.模块名?我用的是python3.6.8
import sys
sys.path.append('../Common') #模块所在目录加入到搜素目录中
from CreateData import createData
from Swap import swap
def selectSort(lyst):
i = 0
while i < len(lyst) - 1:
minindex = i
j = i + 1
while j < len(lyst):
if lyst[j] < lyst[minindex]:
minindex = j
j += 1
if minindex != i:
swap(lyst, i, minindex)
i += 1
print(lyst)
selectSort(createData())
2.2:CreateData.py文件
def createData():
return [23, 45, 2, 35, 89, 56, 3]
2.3:Swap.py文件
def swap(lst, i, j):
temp = lst[i]
lst[i] = lst[j]
lst[j] = temp
三、运行结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
本文标题: python导入不同目录下的自定义模块过程解析
本文地址: http://www.cppcns.com/jiaoben/python/286975.html
-
python设计自定义栈类_Python如何自定义模块?Python基础教程,第十讲,自定义模块...
2020-12-11 12:42:17学完此次课程,我能做什么?通过此次课程,我们将学会如何自定义自己的模块和包,以及如何引用到自己的项目中,从而实现代码的复用。学习此次课程,需要多久?...自定义模块与当前代码同目录自定义模块hello.py 与... -
Python如何自定义模块?Python基础教程,第十讲,自定义模块
2019-01-20 08:14:20学完此次课程,我能做什么? 通过此次课程,我们将学会如何自定义自己的模块和包,以及如何引用到自己的项目中,从而实现代码的复用。...Python如何自定义模块? 自定义模块与当前代码同目录 自定义... -
模块(自定义模块)
2020-11-17 22:48:59自定义模块 当需要特定功能的模块时,可以自己自定义,在所有需要该模块功能的地方调用,从而避免重复代码的多次使用 注意:自定义模块的名字要符合python的规则 制作自定义模块步骤 三个基本步骤: 1.定义模块: ... -
destoon-自定义模块.md
2020-05-06 14:30:06php框架 destoon,二开自定义模块的方法。 文档内分步骤教程,有整个自定义模块所需的操作讲解及示例。 -
angular 自定义模块
2020-03-22 09:35:472 创建自定义模块 命令:ng g module [pah/modulename] 3 同理,可以在自定义模块下创建模块,包括根模块以及其他普通模块 命令:ng g component [path/componentname] 4 在user.module.ts中exports组件,外部... -
layui 自定义 模块 hello
2021-01-01 17:12:24这里写自定义目录标题layui 自定义模块hello参考链接截图源码效果 layui 自定义模块hello 参考链接 layui封装模块小白教程 版本layui-v2.5.7 截图 源码 hello.js /** layui-v2.5.7 自定义模块 */ layui.define(['... -
Python import自定义模块方法
2020-09-22 10:08:36python包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的路径。下面给大家介绍python import自定义模块方法,需要的的朋友参考下 -
angular内置模块以及自定义模块
2019-06-30 21:37:37内置模块 //angular内置的模块 import { FormsModule } from '@angular/forms' import { ... 创建自定义模块 ng g module mymodule 引入自定义模块 app,module.ts //引入自定义模块 import { UserMo... -
Angular 中内置模块 以及 自定义模块示例代码.zip
2020-05-20 21:34:28Angular 中内置模块 以及 自定义模块示例代码.zip -
ansible之自定义模块
2020-03-20 15:06:54ansible之自定义模块,setup模块采集系统信息,变量引用json数据方式,注册和定义变量方式,两种自定义数据采集方式,自定义模块 -
salt自定义模块
2019-12-11 15:54:35如果我们想要获取自己定制的信息,可以通过自定义模块的方式,编写好模块后,下推到minion执行获取数据。更加的灵活 -
DOJO自定义模块
2020-09-25 12:43:51在AMD规范中有两个全局函数,一个是require一个是define,其中require用于加载模块,define用于定义模块,require函数中有两... 自定义模块步骤 1. 定义模块 2. 设置Dojo加载包参数 3. 引入Dojo.js库 4. 通过require... -
Python中如何添加自定义模块
2020-09-16 17:37:26在本篇文章里小编给大家分享了关于Python中添加自定义模块的实例方法,需要的朋友们可以学习下。 -
Joomla - 自定义(自定义模块、修改原有模块样式、添加全局JS)
2018-12-12 17:17:00一、自定义模块 自定义模块 参考Joomla - 模块系统(新建模块、模块类别、自定义模块)第三点 自定义模块部分 自定义模块布局 参考Joomla - T3模板(非常好用的4屏响应式模板)的第十一点 T3 自定义模块 2、修改... -
pytroch-自定义模块
2020-08-24 12:49:44自定义模块 1.自定义梯度求导函数(custom autograd function) 主要用于自定义函数的自动求导 2.自定义网络模型(custom model) 主要用于复杂网络模型的构建 """自定义模块 1.自定义梯度求导函数(custom autograd ... -
Angular中如何自定义模块
2020-03-04 17:43:13为什么要自定义模块? 当项目比较小的时候就可以不用自定义模块,但是当我们的项目庞大,并且需要把所有组件挂载到根模块里面时,Angular内置的模块就不是很合适了,因此遇到这样的情况,我们就可以使用自定义模块... -
dojo的自定义模块和自定义类
2018-04-22 11:05:09由于dojo框架的模块化思想 所以dojo提供了很方便的自定义模块的方法自定义模块:define 关键字 例子define(["dojo/_base/declare"],function (declare) { var myfunction=function () { console.log('... -
python自定义模块
2017-11-14 22:12:191、导入自定义模块 1、导入文件与当前文件在同一目录 2、导入文件在同级目录下某文件夹folder下 3、相对路径导入 2、作为脚本来运行程序 3、github上模块地址 总结了几种方法供大家参考: 1、导入自定义模块... -
Python模块之自定义模块
2020-12-01 19:40:28学习-Python模块之自定义模块 # 请在下面的 Begin-End 之间按照注释中给出的提示编写正确的代码 ########## Begin ########## # 导入 sphere 模块 import sphere # 使用 input 函数获取球体的半径 R=int(input()) # ... -
angular自定义模块以及配置路由模块懒加载
2020-07-01 23:57:232.下面创建上图所示的三个自定义模块,如果我们要在自定义模块实现路由,那就要在命令中添加:- -routing,因为我们要在自定义模块中添加几个组件,那配置路由是必须的。 ng generate module modules/自定义模块名 --...
-
备战2021软考网络规划设计师历年真题套餐
-
行业分类 职业分类 职务分类 单位性质
-
php 传值与传引用的理解(通俗易懂)
-
将两条宽带通过两个路由器组成一个局域网的方法.zip
-
如何用springboot实现每天给对象发情话
-
转行做IT-第1章 计算机基础
-
MFC开发简单聊天程序
-
QT 简单计算器
-
计算机网络期末期末试卷.zip
-
web前端开发规范
-
web学习笔记2--DOS,批处理,组与用户
-
数据分析科学领域最重要五个Python包
-
C++ 指针*与引用&的区别
-
Java.Web整合开发王者归来.zip
-
嵌入式系统开发笔记05:让VS Code在调试时启动特定文件
-
MySQL Internals Manual Chapter 10 : 10.1 The Item Class
-
前端架构师-速成
-
QT 多文档文本编辑器
-
c++ 字符串字符转16进制
-
python大作业学生成绩管理系统.zip