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的更多相关文章

  1. python模块管理

    参考python的模块管理,请看如下 http://blog.sina.com.cn/s/blog_90bc5fc6010159e0.html http://hi.baidu.com/billsche ...

  2. Python 模块管理

    导入新的模块 创建一个 calculate.py 文件 print('ok') def add(x,y): return x + y def sub(x,y): return x - y 再创建一个 ...

  3. python 模块化管理,导入自己的模块(包)

    很多东西似懂非懂,或者当时看懂了,但是感觉不是很重要,经常不用,时间久了,也就变得似懂非懂了.今天被某度电话面试问道一个问题,就是模块倒入,其实我之前也是很仔细的研究过的,不过由于平时做的东西太简单, ...

  4. Python基础篇【第5篇】: Python模块基础(一)

    模块 简介 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就 ...

  5. python 模块加载

    python 模块加载 本文主要介绍python模块加载的过程. module的组成 所有的module都是由对象和对象之间的关系组成. type和object python中所有的东西都是对象,分为 ...

  6. Python 包管理工具解惑

    Python 包管理工具解惑 本文链接:http://zengrong.net/post/2169.htm python packaging 一.困惑 作为一个 Python 初学者,我在包管理上感到 ...

  7. Python模块常用的几种安装方式

    Python模块安装方法 一.方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行:pytho ...

  8. python包管理-distutils,setuptools,pip,virtualenv等介绍

    python包管理-distutils,setuptools,pip,virtualenv等介绍 对于每个编程语言来说打包和发布开发包往往非常重要,而作为一个编程者能够快速容易的获得并应用这些由第三方 ...

  9. 转发:[Python]内存管理

    本文为转发,原地址为:http://chenrudan.github.io/blog/2016/04/23/pythonmemorycontrol.html 本文主要为了解释清楚python的内存管理 ...

随机推荐

  1. DLL的Export和Import及extern "C"

    今天使用Unrar.dll,在调用RARProcessFileW时,VS总是提示“error LNK2001: 无法解析的外部符号”. Unrar.dll中是使用 extern "C&quo ...

  2. 1.python函数式编程-map函数

    编程方法论 面向过程 函数式 面向对象 面向过程 将编程过程拆分成多个步骤,在函数中按照每个步骤进行编程: 函数式编程 编程语言定义的函数+数学意义的函数 1.不可变,不用变量保存状态,不修改变量: ...

  3. Win10系列:UWP界面布局基础1

    随着技术的不断发展,使用者对应用程序的界面体验提出了更高的要求,为了应对越来越复杂的界面设计需求和有效的简化界面开发过程,微软公司在其应用程序的开发技术当中引入一套新的应用程序界面描述语言,这就是XA ...

  4. java string字符拼接符"+"的研究

    程序: public class Test { public static void main(String args[]) { String s1 = "abc"; String ...

  5. 对象关系_many2many

    jdbc: package demo.test.many2many; import java.util.HashSet; import java.util.Set; public class Stud ...

  6. windows添加PDF虚拟打印机

    添加PDF虚拟打印机(果真姜还是老的辣,我摸索了两天没结果的事情,大佬轻轻松松两分钟搞定...) 这种PDF虚拟打印机的功能是将需要被打印的内容写到当前系统的指定目录下的指定文件中.整个过程都不需要连 ...

  7. alpine linux docker 安装 lxml出错的解决办法。

    我习惯在docker当中用alpine来部署服务. 最近在部署flask时使用了 tiangolo/uwsgi-nginx-flask:python3.6-alpine3.7 这个镜像 别人写好的fl ...

  8. Turing equation

    Turing equation 时间限制: 1 Sec 内存限制: 128 MB 题目描述 The fight goes on, whether to store numbers starting w ...

  9. SQL-7查找薪水涨幅超过15次的员工号emp_no以及其对应的涨幅次数t (group 与count)

    题目描述 查找薪水涨幅超过15次的员工号emp_no以及其对应的涨幅次数tCREATE TABLE `salaries` (`emp_no` int(11) NOT NULL,`salary` int ...

  10. angular2组件通讯的几种方式

    最近刚刚接触angular2,对ng2也是一知半解,如有说得不对的地方欢迎指出,欢迎加q共同探讨学习991085978: 1.通过输入型绑定把数据从父组件传到子组件 HeroChildComponen ...