Python 模块管理1
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 模块管理1的更多相关文章
- python模块管理
参考python的模块管理,请看如下 http://blog.sina.com.cn/s/blog_90bc5fc6010159e0.html http://hi.baidu.com/billsche ...
- Python 模块管理
导入新的模块 创建一个 calculate.py 文件 print('ok') def add(x,y): return x + y def sub(x,y): return x - y 再创建一个 ...
- 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的内存管理 ...
随机推荐
- linux下grep命令详解
参数: -a 或 --text : 不要忽略二进制的数据. -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行 ...
- Entrust - Laravel 用户权限系统解决方案
Zizaco/Entrust 是 Laravel 下 用户权限系统 的解决方案, 配合 用户身份认证 扩展包 Zizaco/confide 使用, 可以快速搭建出一套具备高扩展性的用户系统. Conf ...
- Win10系列:JavaScript页内导航
页内导航是在一个页面内根据需要加载其他页面的内容,在开发基于JavaScript的Windows应用商店应用时,可以使用WinJS.Navigation.navigate函数传递要加载的页面地址并使用 ...
- unity中制作模拟第一人称视角下的指南针
private int zRotation; public GameObject obj; public void Update() { //obj = GameObject.Find("C ...
- java⑩
1.for循环: for循环语法 for(表达式1;表达式2;表达式3){ 循环体4} 表达式1:初始化变量 只执行一次!表达式2:循环条件 满足条件进入循环体4表达式3:迭代变量 如果循环体 中只有 ...
- 解决了好几个软件的构建问题,在解决部署问题,bluemix部署
https://www.puteulanus.com/archives/838#comment-961新版 Bluemix 一键搭建 SS 脚本 https://blog.feixueacg.com/ ...
- react全家桶-路由
/src目录下新增一个pages目录,用于存放渲染页面的组件 在/src/pages中新增一个Add.js文件 /src 下的index.js 路由:import React from 'react' ...
- Cracking The Coding Interview 4.0_二叉树
#include <iostream> #include <string> using namespace std; class tree { public: tree() { ...
- 深入理解java虚拟机---虚拟机工具jconsole(十八)
Jconsole,Java Monitoring and Management Console. Jconsole是JDK自带的监控工具,在JDK/bin目录下可以找到.它用于连接正在运行的本地或者远 ...
- 2.1FTP的简单传输
第一个简单的FTP传输实例 from ftplib import FTP nonpassive = False filename = 'new_1.py' dirname = '.' sitename ...