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

yipeiwu_com7年前Python基础

本文实例讲述了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上传package到Pypi(代码简单)

废话不多说了,直接给大家贴代码了。 编写setup.py后 $ python setup.py register $ python setup.py sdist upload 以上...

分分钟入门python语言

Python 是 90 年代初由 Guido Van Rossum 创立的。它是当前最流行的程序语言之一。它那纯净的语法令我一见倾心,它简直就是可以运行的伪码。 请注意:本文以 Pyth...

python web.py开发httpserver解决跨域问题实例解析

使用web.py做http server开发时,遇到postman能够正常请求到数据,但是浏览器无法请求到数据,查原因之后发现是跨域请求的问题。 跨域请求,就是在浏览器窗口中,和某个服务...

python os.path模块常用方法实例详解

os.path模块主要用于文件的属性获取,在编程中经常用到,以下是该模块的几种常用方法。更多的方法可以去查看官方文档:http://docs.python.org/library/os....

PyTorch预训练的实现

前言 最近使用PyTorch感觉妙不可言,有种当初使用Keras的快感,而且速度还不慢。各种设计直接简洁,方便研究,比tensorflow的臃肿好多了。今天让我们来谈谈PyTorch的...