Python 模块管理
导入新的模块
创建一个 calculate.py 文件
print('ok')
def add(x,y):
return x + y
def sub(x,y):
return x - y
再创建一个 bin.py 文件调用 calculate.py 模块
import sys
import calculate # 导入 calculate 模块, 模块会在 sys.path 中搜索
print(calculate.add(1,2)) # 调用 calculate 模块中的 add 方法,需要写成 calculate.add()
print(sys.path) # 查看 pyton 搜索模块
运行结果:
ok
3
['D:\\python_script\\alex_test\\day20', 'D:\\python_script\\alex_test', 'D:\\python35\\python35.zip', 'D:\\python35\\DLLs', 'D:\\python35\\lib', 'D:\\python35', 'D:\\python35\\lib\\site-packages']
通过 from ... import 方法来进行调用 calculate 模块中的方法
from calculate import add,sub
print(add(1,2)) # 直接使用 add() 进行调用
运行结果:
ok
3
创建别名
from calculate import add as plus # 这里程序只能调用 plus,而 add 则会失效
# print(add(1,2)) 报 NameError: name 'add' is not defined 错误
print(plus(1,2))
运行结果:
ok
3
调用其他目录下的模块
logger.py 文件内容
def write_log():
print("logging")
两种方式进行调用
#方法一:
from web.logger import write_log
write_log()
运行结果:
logging
#方法二:
from web import logger
logger.write_log()
运行结果:
logging
注意,如果模块下面的 __ init__ .py 的文件内容,import 和 from...import 都会执行 __ init__ .py 中的语句。
导入模块的时候注意模块的路径
import os,sys
BABE_DIR = os.path.dirname(os.path.dirname(__file__))
# 通过 __file__ 获取当前执行文件的路径及名称
# 通过 os.path.dirname() 获得上一级的路径
sys.path.append(BABE_DIR) # 系统执行环境添加需要的路径
print(sys.path)
Python 模块管理的更多相关文章
- Python 模块管理1
Python 模块管理 导入新的模块 创建一个 calculate.py 文件 print('ok') def add(x,y): return x + y def sub(x,y): retur ...
- python模块管理
参考python的模块管理,请看如下 http://blog.sina.com.cn/s/blog_90bc5fc6010159e0.html http://hi.baidu.com/billsche ...
- python 模块化管理,导入自己的模块(包)
很多东西似懂非懂,或者当时看懂了,但是感觉不是很重要,经常不用,时间久了,也就变得似懂非懂了.今天被某度电话面试问道一个问题,就是模块倒入,其实我之前也是很仔细的研究过的,不过由于平时做的东西太简单, ...
- Python基础篇【第5篇】: Python模块基础(一)
模块 简介 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就 ...
- python 模块加载
python 模块加载 本文主要介绍python模块加载的过程. module的组成 所有的module都是由对象和对象之间的关系组成. type和object python中所有的东西都是对象,分为 ...
- Python 包管理工具解惑
Python 包管理工具解惑 本文链接:http://zengrong.net/post/2169.htm python packaging 一.困惑 作为一个 Python 初学者,我在包管理上感到 ...
- Python模块常用的几种安装方式
Python模块安装方法 一.方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行:pytho ...
- python包管理-distutils,setuptools,pip,virtualenv等介绍
python包管理-distutils,setuptools,pip,virtualenv等介绍 对于每个编程语言来说打包和发布开发包往往非常重要,而作为一个编程者能够快速容易的获得并应用这些由第三方 ...
- 转发:[Python]内存管理
本文为转发,原地址为:http://chenrudan.github.io/blog/2016/04/23/pythonmemorycontrol.html 本文主要为了解释清楚python的内存管理 ...
随机推荐
- 批量插入数据, 将DataTable里的数据批量写入数据库的方法
大量数据导入操作, 也就是直接将DataTable里的内容写入到数据库 通用方法: 拼接Insert语句, 好土鳖 1. MS Sql Server: 使用SqlBulkCopy 2. MySql ...
- rabbitMq 初步
RabbitMQ的工作原理 它的基本结构 组成部分说明如下: Broker:消息队列服务进程,此进程包括两个部分:Exchange和Queue. Exchange:消息队列交换机,按一定的规则将消息路 ...
- 开源播放器 ijkplayer (四) :Ijkplayer切换网络时停止播放的问题处理
问题起因: 在进行ijkplayer播放器的测试时,发现ijkplayer播放器在切换网络时出现直播画面停止的问题. 问题分析: 抓取日志发现:tv.danmaku.ijk.media.player. ...
- Tomcat 部署 Web 项目的本质理解
手动创建Web项目 不借助集成开发工具IDE,直接手动创建一个Web项目,有助于理解Web项目的本质. 1.首先建立一个myweb文件夹(自己定义项目名). 2.然后可以建一个html文件(文件里面只 ...
- 第五篇: 路由网关(zuul)
在微服务架构中,需要几个基础的服务治理组件,包括服务注册与发现.服务消费.负载均衡.断路器.智能路由.配置管理等,由这几个基础组件相互协作,共同组建了一个简单的微服务系统. 在Spring Cloud ...
- C语言中几个常用数学计算函数ceil(), floor(), round()的用法
最近在实现算法的过程中,遇到了使用几个数学计算函数,感觉挺有意思,就记下来 方便以后使用. ceil(x)返回不小于x的最小整数值(然后转换为double型). floor(x)返回不大于x的最大整数 ...
- 递归查询区域信息及子区域到advTree
效果: DataTable dtArea = new DataTable(); private void Form1_Load(object sender, EventArgs e) { Node n ...
- js 判断 ip
[使用新浪ip接口] 多地域测试方法:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=111.202.103.2 ...
- ubuntu 增加一个用户 并赋予权限
一.添加一个用户 sudo adduser tommy //添加一个tommyd的用户 sudo passwd tommy // 修改密码 回车后出现一下提示 输入密码即可Changing pass ...
- vue axios封装以及API统一管理
在vue项目中,每次和后台交互的时候,经常用到的就是axios请求数据,它是基于promise的http库,可运行在浏览器端和node.js中.当项目越来越大的时候,接口的请求也会越来越多,怎么去管理 ...