python开发中module模块用法实例分析


Posted in Python onNovember 12, 2015

本文实例讲述了python开发中module模块用法。分享给大家供大家参考,具体如下:

在python中,我们可以把一些功能模块化,就有一点类似于java中,把一些功能相关或者相同的代码放到一起,这样我们需要用的时候,就可以直接调用了

这样做的好处:

1,只要写好了一个功能模块,就可以在以后调用,代码的重用就可以体现出来了

2,功能写好了以后,不会发生错误。如果一个相同的功能,我们在一个模块中写了一遍,在另外的模块中又写了一遍......这样我们难免保证我们在写的过程中不发生错误。

但是我们如果能够写一个功能模块写好了以后,就把他用在很多地方,其一,用起来方便,其二,可以保证其正确性

3,代码共享

说了这么多,还是来点实际的比较好!!!

我们新建一个文件:fibo.py(当然这个名字可以随个人意愿)

#Modules
def fib(n):    # write Fibonacci series up to n
  a,b = 0,1
  while b < n:
    print(b,end=' ')
    a,b = b, a + b
  print()
def fib2(n):    # return Fibonacci series up to n
  result = []
  a,b = 0,1
  while b < n:
    result.append(b)
    a,b = b, a + b
  return result
def add(numberA,numberB): #定义加法
  return numberA + numberB
def sub(numberA,numberB): #定义减法
  return numberA - numberB
def mul(numberA,numberB): #定义乘法
  return numberA*numberB
def div(numberA,numberB): #定义除法
  if numberB != 0:
    return numberA//numberB
  else:
    return 'Error'

上面就是我们自定义的一个简单的功能模块,里面定义了一些方法。

我们需要在:test_modules.py(和fibo.py文件在同一个目录的另一个文件)文件中调用fibo.py中的方法:

import fibo
fibo.fib(1000)
result = fibo.fib2(1000)
print(result)

运行效果如下:

Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>> 
1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 
[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987]
>>>

现在我们又定义了一个文件:

test_modules1.py调用fibo.py中的部分方法

from fibo import fib,fib2
#这里是可以直接使用以上两个方法的
fib(100)
result = fib2(1000)
print(result)

上面描述的是,我们应用了fibo.py文件中的fib,fib2两个方法

运行效果:

Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>> 
1 2 3 5 8 13 21 34 55 89 
[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987]
>>>

如果我们要应用fibo.py中的所有方法,我们可以这样做:

#应用fibo.py中所有的方法
#有一点类似于java中的引入包的形式
from fibo import *
#这里可以使用fibo中的所用方法
fib(1000)
print(fib2(100))
numberA = 20
numberB = 5
print('加法计算:',numberA,'+',numberB,'=',add(numberA,numberB))
print('减法计算:',numberA,'-',numberB,'=',sub(numberA,numberB))
print('乘法计算:',numberA,'*',numberB,'=',mul(numberA,numberB))
print('除法计算:',numberA,'/',numberB,'=',div(numberA,numberB))

运行效果:

Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>> 
1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 
[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
加法计算: 20 + 5 = 25
减法计算: 20 - 5 = 15
乘法计算: 20 * 5 = 100
除法计算: 20 / 5 = 4
>>>

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python写的贪吃蛇游戏例子
Jun 16 Python
Python单元测试框架unittest使用方法讲解
Apr 13 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
Mar 30 Python
浅谈Python中重载isinstance继承关系的问题
May 04 Python
Python递归函数实例讲解
Feb 27 Python
更新修改后的Python模块方法
Mar 03 Python
深入浅析Python 中 is 语法带来的误解
May 07 Python
python itchat实现调用微信接口的第三方模块方法
Jun 11 Python
numpy 返回函数的上三角矩阵实例
Nov 25 Python
Pytorch实现神经网络的分类方式
Jan 08 Python
Keras 加载已经训练好的模型进行预测操作
Jun 17 Python
PyQt中使用QtSql连接MySql数据库的方法
Jul 28 Python
Python中Class类用法实例分析
Nov 12 #Python
python开发之函数定义实例分析
Nov 12 #Python
python开发之字符串string操作方法实例详解
Nov 12 #Python
深入浅析Python字符编码
Nov 12 #Python
python开发之for循环操作实例详解
Nov 12 #Python
python开发之IDEL(Python GUI)的使用方法图文详解
Nov 12 #Python
Python中pygame的mouse鼠标事件用法实例
Nov 11 #Python
You might like
农民C键的运用技巧
2020/03/04 星际争霸
基于PHP一些十分严重的缺陷详解
2013/06/03 PHP
VIM中设置php自动缩进为4个空格的方法详解
2013/06/14 PHP
使用git迁移Laravel项目至新开发环境的步骤详解
2020/04/06 PHP
加载jQuery后$冲突的解决办法
2010/07/09 Javascript
JS打开层/关闭层/移动层动画效果的实例代码
2013/05/11 Javascript
JavaScript中的数学运算介绍
2014/12/29 Javascript
JavaScript实现节点的删除与序号重建实例
2015/08/05 Javascript
window.setInterval()方法的定义和用法及offsetLeft与style.left的区别
2015/11/11 Javascript
js实现根据身份证号自动生成出生日期
2015/12/15 Javascript
Bootstrap创建可折叠的组件
2016/02/23 Javascript
网页前端登录js按Enter回车键实现登陆的两种方法
2016/05/10 Javascript
使用jQuery.Qrcode插件在客户端动态生成二维码并添加自定义Logo
2016/09/01 Javascript
省市区三级联动jquery实现代码
2020/04/15 Javascript
详解vue父子模版嵌套案例
2017/03/04 Javascript
Javascript读写cookie的实例源码
2019/03/16 Javascript
浅谈vue3中effect与computed的亲密关系
2019/10/10 Javascript
[23:21]Ti4 冒泡赛第二轮DK vs C9 2
2014/07/14 DOTA
[56:45]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第一局
2016/02/28 DOTA
详解Python的Django框架中的模版继承
2015/07/16 Python
CentOS下使用yum安装python-pip失败的完美解决方法
2017/08/16 Python
Python内置函数delattr的具体用法
2017/11/23 Python
PyQt5每天必学之进度条效果
2018/04/19 Python
树莓派使用USB摄像头和motion实现监控
2019/06/22 Python
python实现简单成绩录入系统
2019/09/19 Python
Python tornado上传文件的功能
2020/03/26 Python
如何让PyQt5中QWebEngineView与JavaScript交互
2020/10/21 Python
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
HTML5语音识别标签写法附图
2013/11/18 HTML / CSS
amazeui时间组件的实现示例
2020/08/18 HTML / CSS
Genny意大利官网:意大利高级时装品牌
2020/04/15 全球购物
中医专业职业生涯规划书范文
2014/01/04 职场文书
2014年安全生产目标责任书
2014/07/23 职场文书
欠款起诉书范文
2015/05/19 职场文书
使用Nginx的访问日志统计PV与UV
2022/05/06 Servers
nginx静态资源的服务器配置方法
2022/07/07 Servers