有过C语言编程经验的朋友都知道在C语言中如果要引用sqrt这个函数,必须用语句"#include"引入math.h这个头文件,否则是无法正常进行调用的。那么在Python中,如果要引用一些内置的函数,该怎么处理呢?在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块。

一.模块的引入

在Python中用关键字import来引入某个模块,比如要引用模块math,就可以在文件最开始的地方用import math来引入。在调用math模块中的函数时,必须这样引用:

模块名.函数名

为什么必须加上模块名这样调用呢?因为可能存在这样一种情况:在多个模块中含有相同名称的函数,此时如果只是通过函数名来调用,解释器无法知道到底要调用哪个函数。所以如果像上述这样引入模块的时候,调用函数必须加上模块名。

import math#这样会报错print sqrt(2)#这样才能正确输出结果print math.sqrt(2)

有时候我们只需要用到模块中的某个函数,只需要引入该函数即可,此时可以通过语句

from 模块名 import 函数名1,函数名2....

来实现,当然可以通过不仅仅可以引入函数,还可以引入一些常量。通过这种方式引入的时候,调用函数时只能给出函数名,不能给出模块名,但是当两个模块中含有相同名称函数的时候,后面一次引入会覆盖前一次引入。也就是说假如模块A中有函数function( ),在模块B中也有函数function( ),如果引入A中的function在先、B中的function在后,那么当调用function函数的时候,是去执行模块B中的function函数。

如果想一次性引入math中所有的东西,还可以通过from math import *来实现,但是不建议这么做。

二.定义自己的模块

在Python中,每个Python文件都可以作为一个模块,模块的名字就是文件的名字。

比如有这样一个文件test.py,在test.py中定义了函数add:

#test.pydef add(a,b): return a+b

那么在其他文件中就可以先import test,然后通过test.add(a,b)来调用了,当然也可以通过from test import add来引入。

三.在引入模块的时候发生了什么

先看一个例子,在文件test.py中的代码:

#test.pydef display(): print 'hello world'

display()

在test1.py中引入模块test:

#test1.pyimport test

然后运行test1.py,会输出"hello world"。也就是说在用import引入模块时,会将引入的模块文件中的代码执行一次。但是注意,只在第一次引入时才会执行模块文件中的代码,因为只在第一次引入时进行加载,这样做很容易理解,不仅可以节约时间还可以节约内存。

php模块介绍,Python模块介绍相关推荐

  1. python url模块介绍_urlparse模块(python模块)

    一.urlparse模块简介    urlparse模块主要是把url拆分为6部分,并返回元组.并且可以把拆分后的部分再组成一个url.主要有函数有urljoin.urlsplit.urlunspli ...

  2. python软件界面-python软件界面介绍(python软件介绍)

    python软件界面介绍 1.接口初始化 当我们使用pycharm工具时,我们将遇到的第一个问题是,在进行各种配置后界面变得混乱时,我们该怎么办?我们应该还原,那么如何还原初始设置? 尽管此工具是从e ...

  3. python软件介绍-python软件界面介绍(python软件介绍)

    python软件界面介绍 1.接口初始化 当我们使用pycharm工具时,我们将遇到的第一个问题是,在进行各种配置后界面变得混乱时,我们该怎么办?我们应该还原,那么如何还原初始设置? 尽管此工具是从e ...

  4. Python如何安装模块,python模块安装失败的原因以及解决办法

    前言 今天来给刚开始学习python的朋友讲解一下 如何安装python模块, python模块安装失败的原因以及解决办法 很多朋友拿到代码之后,就开始复制粘贴 --> 然后右键进行运行 结果就 ...

  5. python的html模块,python模块之HTMLParser

    HTMLParser是python用来解析html的模块.它可以分析出html里面的标签.数据等等,是一种处理html的简便途径. HTMLParser采用的是一种事件驱动的模式,当HTMLParse ...

  6. 在没有网的windows环境下安装Python模块

    在安装python环境以及python的一些模块时,可能需要在没有网的windows环境下安装Python模块. python模块下载地址,几乎所有的模块都有:https://www.lfd.uci. ...

  7. python模块与包

    一.模块 模块就是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块 模块是非常简单的Python文件,单个Python文件就是一个模块,两个文件就是两个模块 # 1. python ...

  8. python模块:运行机制与编写方法

    文章目录 python模块的导入机制: python模块编写方法: #mod1: def printer(x):print(x) #mod2: print('hello') n=1 #mod3: x= ...

  9. python android 扩展库,Python模块进阶、标准库、扩展库

    模块进阶 Python有一套很有用的标准库(standard library).标准库会随着Python解释器,一起安装在你的电脑中的. 它是Python的一个组成部分.这些标准库是Python为你准 ...

最新文章

  1. [YTU]_2738 指针练习--变量交换
  2. C#实现水晶报表绑定数据并实现打印
  3. minio安装及特性原理介绍
  4. 如何查找UI5应用对应在ABAP Netweaver服务器上的BSP应用名称
  5. jsp医院管理系统_Thymeleaf+SpringBoot+SpringDataJPA实现的中小医院信息管理系统
  6. Linux系统调用(syscall)原理(转)
  7. JS实现表单多文件上传样式美化支持选中文件后删除相关项
  8. workbench表头可以是中文_超简单:Python 5步去中国式报表表头
  9. Linux 常用的命令
  10. ①ESP8266-wifi模块使用方法
  11. 小米 gps信号测试软件,实时查看,防走丢神器:小米 米兔GPS定位器 防盗跟踪器 使用评测...
  12. 平台为王:Microsoft Office System为什么成功?
  13. 职场低情商就这三句话
  14. lol的不只有英雄联盟,还有程序开发天团!
  15. Maximum Profit(C++最大利益简单算法)
  16. ssm教育机构管理系统毕业设计源码010224
  17. 实践课程-PRO-2 Day1
  18. 【C语言基础】——6个人摇骰子
  19. Android进程保活(如何尽可能避免APP被杀死)
  20. spring 之 ObjectPostProcessor

热门文章

  1. 基于java的IO流的文件读取系统
  2. 一位10年程序员生涯的总结与经验忠告分享
  3. jQuery 操作 DOM
  4. ArcGIS的许可文件问题
  5. JQuery Autocomplete实战
  6. ThreadLocal使用
  7. 再译《A *路径搜索入门》之一
  8. 【网络文件共享】02、NFS服务基础
  9. 进程内存分配和/proc/xxx/maps简单分析
  10. DataRow判断列名是否存在