python学习第十三天 -模块和包

模块和包

大家都知道,在计算机程序开发的过程中,随着程序代码越写越多,这样代码就会越不容易维护。

有时候为了好维护代码,把不同功能的函数放到不同的xx.py文件中。

在python中,一个.py文件就称为一个模块。

使用模块有什么好处?

1、提供代码可维护性。

2、可以避免函数名和变量名冲突。如果两个相同的函数名在两个模块中,直接引用的时候,可以直接显示调用xx.function即可。

但是如果不同的人编写的模块名又是相同的怎么办?为了解决模块名相同,Python又引用包的概念。

在python中,一个包代码的意思就是一个文件夹。如果一个文件夹需要被定义为一个包,则文件夹里面必须包含__init__.py这个文件。

举个例子:

定义了一个package_test的包,具有math模块(python内置也有math模块)。

那么要引用上述math模块时,则

import package_test.math

导入模块

导入系统模块,关键字为import.

import math

1.有时候也希望只导入math模块的一个函数,不要求导入全部函数

from math import sin,cos

2.如果存在两个模块函数名相同,则 模块.函数名() 显示调用

import math,mylog
print math.log(5)
print mylog.log(5,‘default‘)

3.还可以通过给函数起‘别名‘的方式避免函数名冲突

from math import log
from mylog import log as logger
print log(5)
print logger(5,‘default‘)

使用__future__

目前python已经有3.x版本了,如果要在就版本python2.7.x版本引用python3.x的话,就要使用__future__

>>> 10/3
3

python 2.7.x版本,除法得到的是整数。

而python 3.x版本。则

>>> 10/3
3.3333333333333335

>>>10//3
3

旧版本引用新版本的如上特性,则

>>> from __future__ import division
>>> 10/3
3.3333333333333335

安装第三方模块

毕竟python内置只是一些简单的模块。如果要引用一些高级的模块,要先进行安装。

目前安装第三方模块比较常用的是pip工具。

打开命令提示符:输入pip,然后pip install + 模块名(example:pip install Pillow)

导入

>>>from PIL import Image

小结:主要讲解模块和包的概念,及其如何导入模块,安装第三方模块,__future__的作用。

时间: 2024-10-10 11:22:52

python学习第十三天 -模块和包的相关文章

Python学习之路12?模块与包

一 模块 1.1 什么是模块? 一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 1.2 为何要使用模块? 如果你退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过python test.py方式去执行,此时test.py被称为脚本script. 随着程序的发展,功能越来越多,为了方便管理,我们通常将程序分成一个个的文件,这样做程序的结构更清晰,方便管理.这时我们不仅仅可以把

Python学习(十) —— 模块和包

一.模块 一个模块就是一个包含了python定义和声名的文件,文件名就是模块名加上.py后缀. import加载的模块分为四个通用类别: 1.使用python编写的代码(.py文件) 2.已被编译为共享库或DLL的C或C++扩展 3.包好一组模块的包 4.使用C编写并链接到python解释器的内置模块

Python学习-基础篇4 模块与包与常用模块

一 模块介绍 1.什么是模块?#常见的场景:一个模块就是一个包含了一组功能的python文件,比如spam.py,模块名为spam,可以通过import spam使用. #在python中,模块的使用方式都是一样的,但其实细说的话,模块可以分为四个通用类别: 1 使用python编写的.py文件 2 已被编译为共享库或DLL的C或C++扩展 3 把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件夹称之为包) 4 使用C编写并链接到python解释器的内置模块2.

python学习笔记五:模块和包

一.模块用import导入 cal.py: #!/usr/bin/python def add(x,y): return x+y if __name__ == '__main__': print add(1,2) 注:__name__为内置变量,如果直接在CLI中调用值为__mail__,否则为文件名. 在new.py中导入: import cal print cal.add(2,3); 二.包:按目录名组织的模块 1.建立一个名字为包名字的文件夹 2.在该文件夹下创建一个__init__.py

Python学习笔记五(模块与包)

一.模块 1.模块介绍 一个模块就是包含了一组功能的python文件,可以通过import导入模块使用. python中模块分为四个类别: a) 使用python编写的.py文件 b) 已被编译为共享库或DLL的C或C++扩展 c) 把一系列模块组织到一起的文件夹,文件夹内有__init__.py文件,称该文件夹为包 d) 使用C编写并链接到python解释器的内置模块 定义my_module.py模块,模块名为my_module print("from my_module.py")

python学习的第十八天模块之包、相对搜索路径和绝对搜索路径

一.包 1.什么是包 包是一种通过使用'.模块名'来组织python模块名称空间的方式.具体就是一个包含有__init__.py文件的文件夹,所以其实我们创建包的目的就是为了用文件夹将文件/模块组织起来PS:(1)在pyhton3中没有__init__不会报错,但在python2会报错(2)创建包的目的就是为了导入模块而不是运行,包的本质是个模块也是个文件夹 2.为什么用包 虽然功能越来越多被导入的模块越多,我们需要把这些模块统一组织起来方便我们管理,以提高程序的结构性和稳定性 ps:(1)无论

Python学习笔记-安装MySQLdb模块

模块下载地址: MySQL-python 1.2.3 for Windows and Python 2.7, 32bit and 64bit versions http://www.codegood.com/archives/129 直接点击安装exe即可,如果缺少dll文件,可以百度下载相关dll文件. Python学习笔记-安装MySQLdb模块

python学习[第十三篇] 条件和循环

python学习[第十三篇] 条件和循环 if语句 单一if 语句 if语句有三个部分构成,关键字if本身,判断结果真假的条件表达式,以及表达式为真或非0是执行的代码 if expression: expr_true_suite 条件表达式可以是多重的 通过布尔操作符 and or not来实现 单一语句的if 代码块,如果if语句的执行代码只有一行,可以放在一行来写 if expresssion: expr_tru_suite >>> if True: print True ... T

python 学习_第四模块 并发编程(多线程)

python 学习_第四模块 并发编程(多线程) 1  开启线程方式 from threading import Thread import time def say(name): time.sleep(2) print("%s hello"%name) if __name__ =="__main__": t = Thread(target=say,args=("alex",)) t.start() print("主线程")