python模块之导入包及模块发布
1.导入包(不常用的方法)
在使用python的包时,有时候想直接导入包名,然后通过包名来调用模块,例如:
temp为我们创建的一个包,如果我们想通过下面的方式进行导入模块中的方法,将会出错
import temp temp.text1.hello()
现在我们在这个__init__.py文件中输入如下代码,再像上面那样导入时,将不会出错
from . import text1
from . import text2
运行结果:
2. 模块的发布
将自己创建的模块发布到系统目录下,这样就可以方便、随时导入我们的模块了,就像我们导入random模块一样方便了。
假如我们现在想发布temp包中的text1.py模块和text2.py模块
第一步:在与temp包同级的目录下创建一个setup.py文件
里面的内容为
from distutils.core import setup setup(name="zhao", version="1.0", description="This is the toolkit I used in my paper. ",
author="zhao", py_modules=["temp.text1", "temp.text2"])
第二步:在Python文件夹该级目录下启用shell,输入:python setup.py build。将会创建一个build.,查看结构和原py模块包,路径相仿,有lib等。
build之后会看到文件夹下多出了如下内容
第三步:制作模块压缩包:python setup.py sdist,在当前目录下生成了一个模块名加版本的模块压缩包。
sdist之后,多出了如下内容
第四步:解压和安装。解压这个压缩包,然后使用命令python setup.py install 进行安装。
我是安装在虚拟环境machineLearning中的。
第五步:安装完成之后进行测试
随便建立一个文件,导入我们刚才发布的包和模块,测试通过,安装成功。
第六步:如果需要卸载我们刚才安装的模块,直接手动卸载即可,我们安装的模块一般在这个目录下,删除安装的该文件夹即可。
python模块之导入包及模块发布的更多相关文章
- guxh的python笔记十:包和模块
1,包和模块 包package:本质就是一个文件夹/目录,必须带一个__init.__.py的文件 模块module:.py结尾的python文件 2,导入方法 import pandas, coll ...
- python模块_pcharm导入包的问题
1.添加pip包 2.导入项目需要由内置包(library root)
- python 输入参数解包,模块导入,接收IO输入参数
#coding=utf-8 from sys import argv script,first,second,third = argv print "the script is=" ...
- 吴裕雄--天生自然PythonDjangoWeb企业开发:解决使用相对路径名导入包中子模块问题
问题 将代码组织成包,想用import语句从另一个包名没有硬编码过的包中导入子模块. 解决方案
- 21.python的模块(Module)和包(Package)
目录 模块(Module)和包(Package) 模块(modue)的概念 模块导入方法 1.import 语句 2.from-import 语句 3.from-import* 语句 4.运行本质 i ...
- 11、python模块的导入
前言:本文主要介绍python模块的导入,包括模块的定义.模块的作用.导入方式以及模块的搜索路径. 一.模块的定义 python模块(module),简单来说就是一个python文件,以.py结尾,文 ...
- Python开发【第十五篇】模块的导入
的导入语句 import 语句 语法: import 模块名1 [as 模块别名] 作用: 将某模块整体导入到当前模块 示例: import math import sys,os 用法: 模块名.属性 ...
- python小白入门之导入指定的模块
在python中导入模块是通过关键字import进行导入的,下面演示一下,模块的导入,指定模块别名,指定函数别名,调用模块中所有的函数运行结果: 1.模块的导入Study.py文件里面的内容是:形式 ...
- subprocess, re模块,logging, 包等使用方法
subprocess, re模块,logging, 包等使用方法 subprocess ''' subprocess: sub: 子 process: 进程 可以通过python代码给操作系统终端发送 ...
随机推荐
- P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…
P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He… 大写祖母转数字 -64 发现dalao #include<bits/stdc++.h> usi ...
- 《FS Book》: 如何让圣诞节邮件营销与众不同
临近年末,双旦将至,这无疑是一年中最适合进行营销的时候,各大企业都开始进行促销活动,但与此同时,不要忘了问候你的客户,给他们真切的关怀.国内领先的邮件营销服务商Focussend在其最新一期<F ...
- django QueryDict 类型
如果没有值,返回默认值的写法 允许有多个同名的值,但是需要用getlist 访问. 如果用常规的访问只能访问到最后一个值.
- ListView控件,表格模式下,如何调整行高
参考说明: https://www.codeproject.com/Articles/1401/Changing-Row-Height-in-an-owner-drawn-Control 如果所有项的 ...
- 集中式日志分析平台 Elastic Stack(介绍)
一.ELK 介绍 二.ELK的几种常见架构 >>ELK 介绍<< ELK 构建在开源基础之上,让您能够安全可靠地获取任何来源.任何格式的数据,并且能够实时地对数据进行搜索.分析 ...
- Asp.Net Webform 常用代码
1015.ASP.Net WebForm 数据绑定 < %# %> < %= %> < % %> < %@ %> Eval("Nam ...
- Unity 声音与录音与麦克风实时播放
Unity AudioSource与MicroPhone以及AudioClip之间的关系. 下面是一个声音,长度为7秒钟,声音的实际数据本质是由采样点组成的的列表,一秒钟内的采样点数就是采样频率,下面 ...
- java带图形界面的五子棋
Main: package BlackWhite; import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowL ...
- Linux 命令 watch 监测命令的运行结果
watch 命令周期性地执行命令,全屏显示输出命令.watch命令可以监测一个命令的运行结果 命令参数 -n, --interval 设置间隔时间.默认情况下,watch 每隔 2 秒执行一次命令. ...
- linux建立ftp用户
#!/bin/bash sleep 1 mkdir -p /ceshi/ userdel ceshi useradd -d /ceshi -s /sbin/nologin ceshi echo mim ...