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的内存管理 ...
随机推荐
- python实战提升--1
#python实战提升 1. 如何在列表.字典.集合中根据条件筛选数据? python中for _ in range(10)与for i in range(10)有何区别 下划线表示 临时变量, 仅用 ...
- nginx 502 bad gateway 问题处理集锦
一般看来, 这种情况可能是由于nginx默认的fastcgi进程响应的缓冲区太小造成的, 这将导致fastcgi进程被挂起, 如果你的fastcgi服务对这个挂起处理的不好, 那么最后就极有可能导致5 ...
- Lerning Entity Framework 6 ------ Complex types
Complex types are classes that map to a subset of columns of a table.They don't contains key. They a ...
- 手写实现简单版IOC
概述 IOC (Inversion of Control) 控制反转,大家应该都比较熟悉了.应该也都有用过,这里就不具体介绍了.自己平时也有用到过IOC,但是对它的具体实现原理只有一个模糊的概念,所以 ...
- 第32节:Java中-构造函数,静态方法,继承,封装,多态,包
构造函数实例 class Cat{ // 设置私有的属性 name private String name; // 设置name的方法 public void setName(String Name) ...
- JavaScript学习之路-为什么要学习JavaScript语法
版权声明:未经博主允许不得转载 前言 为什么要学习JavaScript语法,没有理由,因为工作需要,也为了成为全栈,那现在还是好好努力学习吧! 发展 说实话,JavaScript很好学也很重要,也很容 ...
- Android开发的插件Code Generator与LayoutCreator的安装与使用,提升你的开发效率
前言 大家好,给大家带来Android开发的插件Code Generator与LayoutCreator的安装与使用,提升你的开发效率的概述,希望你们喜欢 学习目标 掌握两个插件的安装和使用,能够实现 ...
- rocketmq搭建趟坑记
这个坑对小白来讲可能要趟很久才能过,我就是这样~~明明很简单的配置,搞了半天 我用的是rocketmq4.1.0,配置了jvm参数,都能正常启动,且能在线上运行demo,但是线下就是连不上 在conf ...
- scikit-image 图像处理库介绍
今天学习图像处理的时候,无意中看到了scikit 软件包,抱着学习的态度,这里做个记录,方便以后翻阅. 概念:scikit-image 是一种开源的用于图像处理的 Python 包.它包括分割,几何变 ...
- LeetCode:146_LRU cache | LRU缓存设计 | Hard
题目:LRU cache Design and implement a data structure for Least Recently Used (LRU) cache. It should su ...