↑ 点击上方【计算机视觉联盟】关注我们

今天是小编持续更新关于Python的知识总结以及Python实践项目应用的第5天,带你利用零碎时间自学最受欢迎的编程语言之一Python语言。你和小编一起打卡了吗?

我们可以在编写程序时将函数存储在被称为模块的独立文件中,再将模块导入到主程序中(必须的步骤)。port语句允许在当前运行的程序文件中使用模块中的代码。

模块是扩展名为.py的文件,包含要导入到程序中的代码。

模块的方法有很多种:

1、导入整个模块

导入模块方法:

import module_name(模块名)

调用方法:

module_name.function_name()

要让函数是可导入的,需要创建模块。

创建一个制作pizza的模块(pizza.py):

1#!/usr/bin/env python
2# -*- coding:utf-8 -*-
3
4def make_pizza(size, *toppings):
5    """概述要制作的比萨"""
6    print("\nMaking a " + str(size) + "-inch pizza with the following toppings:")
7
8    for topping in toppings:
9        print("- " + topping)

另外在同目录下创建一个make_pizza.py的文件,这个文件导入刚创建的模块,再调用make_pizza()函数两次:

1#!/usr/bin/env python
2# -*- coding:utf-8 -*-
3
4# 导入pizza模块
5import pizza
6
7pizza.make_pizza(16, 'pepperoni')  # 调用模块函数:(模块名.函数名)
8pizza.make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')

运行结果为:

上述代码在运行时,代码行import pizza让Python打开文件pizza.py,并将其中的多有函数都复制到主程序中,这些复制是Python

幕后进行复制的。当我们导入pizza.py这个模块时,我们就可以使用pizza.py中定义的所有函数。

2、导入特定的函数

我们也可以在导入时只导入模块中的特定函数

导入方法如下(可以导入任意数量函数,逗号分隔):

module_name import function_name1, function_name2,function_3

调用方法:

function_name()

对于上述pizza的示例,如果只想导入使用的函数,代码类似下面:

1# 导入pizza模块中的make_pizza()函数
2from pizza import make_pizza
3
4make_pizza(16, 'pepperoni')
5make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')

3、使用as给函数指定别名

关键字as给函数或模块重命为你提供的别名

指定别名方法:

from module_name import function_name as fn

如上述例子,将make_pizze()指定别名mp(),代码类似如下:

1#!/usr/bin/env python
2# -*- coding:utf-8 -*-
3
4# 导入pizza模块中的make_pizza()函数,并制定别名mp
5from pizza import make_pizza as mp
6
7mp(16, 'pepperoni')
8mp(12, 'mushrooms', 'green peppers', 'extra cheese')

4、导入模块中的所有函数

使用星号(*)运算符可让Python导入模块中的所有函数

1#!/usr/bin/env python
2# -*- coding:utf-8 -*-
3
4# 导入pizza模块中的所有函数
5from pizza import *
6
7make_pizza(16, 'pepperoni')
8make_pizza(12, 'mushrooms', 'green peppers', 'extra cheese')

5、总结

模块在使用时,有两种方式:

  1. 直接导入模块,程序可以使用模块中所有定义的函数,调用方法为:module_name.function_name()(需要句点表示法)

  2. 导入模块中的特定函数(上述2所讲)或者全部函数(上述4所讲),在调用函数时,需要使用模块名,直接使用函数名就可以调用:function_name()。

热文荐读

2018年12月精选文章目录一览

深度学习开源数据集大全

2018年度最强的30个机器学习项目!

人工智能相关领域的国际顶尖会议介绍

速收藏!最强数据集50个最佳机器学习公共数据!

速收藏,《机器学习实战》Python3环境算法实现代码

亲身经历2019年校招8个大厂心得体会,纯干货分享(大疆、百度...)

【资源下载】921页《用Python3带你从小白入门机器学习实战》教程手册

带你自学Python系列(十四):Python函数的用法(四)相关推荐

  1. python系列之:python基础用法

    python系列之:python基础用法 一.定义变量,并打印变量 二.Python字符串和引号用法 三.python注释 四.print输出 五.python标准数据类型 六.Python数字Num ...

  2. 【直播资料下载】Python 系列直播——深入Python与日志服务,玩转大规模数据分析处理实战第二讲...

    流畅的Python数据处理及大数据处理ETL Python 系列直播--深入Python与日志服务,玩转大规模数据分析处理实战 直播讲师:丁来强(成喆)--阿里高级技术专家,从事阿里云日志服务相关的产 ...

  3. python做平面设计-Python系列干货之——Python与设计模式

    原标题:Python系列干货之--Python与设计模式 一.创建类设计模式 前言: 什么样的程序员是一个好的程序员?学会很多门编程语言,就是一个好的程序员了么?事实上,学会一门编程语言不是一件很难的 ...

  4. 【直播资料下载】Python 系列直播——深入Python与日志服务,玩转大规模数据分析处理实战第三讲...

    一站式开发者服务,海量学习资源0元起,尽在开发者分会场 Python3舒适性编程与兼容Py2/3实践 Python 系列直播--深入Python与日志服务,玩转大规模数据分析处理实战 直播时间:3月1 ...

  5. 【直播资料下载】Python 系列直播——深入Python与日志服务,玩转大规模数据分析处理实战第三讲... 1

    一站式开发者服务,海量学习资源0元起,尽在开发者分会场 Python3舒适性编程与兼容Py2/3实践 Python 系列直播--深入Python与日志服务,玩转大规模数据分析处理实战 直播时间:3月1 ...

  6. python enumerate函数_关于python中enumerate和zip函数的用法及举例

    关于python中enumerate和zip函数的用法及举例 关于enumerate函数: enumerate函数可以同时返回列表或元组等可迭代对象的下标和内容,但实际上,enumerate函数实际返 ...

  7. python中all()和any()函数的用法

    python中all()和any()函数的用法 若判断两个数组相等,all()函数表示的是数组中所有数都要相等才输出TRUE,any()函数则是只要有一个数相等则就输出TRUE.如下代码所示: imp ...

  8. 自学python系列10:python的函数和函数式编程

    1.1什么是函数 函数是对程序逻辑进行结构化或过程化的编程方法.这样能节省空间,有助于保持一致性. 函数的创建,使用,引用方法: def foo():print 'bar' foo foo() 1.1 ...

  9. 【Python系列2】Python变量类型和运算符 大全

    文章目录 变量定义和使用 `int`整数类型 整数不同进制 数字分隔符 `float`小数/浮点数类型 `complex`复数类型 字符串 处理字符串中的引号 字符串换行 长字符串 原始字符串 `by ...

  10. Python 实现AdaGrad和Adam拟合四次函数(随笔四)

    1. AdaGrad 拟合四次函数,目标函数: f(x)=3.2∗x4+1.5∗x3+4.3∗x2+9.03∗x−15f(x) = 3.2 * {x}^4 + 1.5 * {x}^3 + 4.3 * ...

最新文章

  1. Node搭建静态资源服务器时后缀名与响应头映射关系的Json文件
  2. 在云环境上使用SLF4J对Java程序进行日志记录
  3. 是现在的钱不值钱还是药太贵!
  4. java criteria exist_Java Criteria.addExists方法代碼示例
  5. android图片适配到裁剪框,Android图片剪裁-调用系统实现,完美适配魅族等机型
  6. Shell定时删除日志
  7. YOLOv4中的数据增强
  8. 错误处理之异常与返回码
  9. 杭电 2838 牛叉的树状数组
  10. 单片机(ISIS 7 Professional):交通灯代码项目
  11. 乌龟git配置ssh密钥
  12. latex制作中英文简历(含模板代码)
  13. Ubuntu录制gif图
  14. 项目管理四要素是什么?
  15. vue中实现图片预览功能
  16. [转]C#中的global关键字(global::)
  17. 根据ID3算法给出游玩的决策树的实战案例
  18. viewpager+Fragment+Butterknife报错 :Fragment already added: MsgOuChatFragment
  19. Python必会的单元测试框架 —— unittest
  20. 基础加强 -- 反射

热门文章

  1. 数组翻转_LeetCode刷题实战151:翻转字符串里的单词
  2. fastreport 横向分栏_FastReport开发指南
  3. oracle绑定值的结尾,Oracle Sql字符串多余空格处理方法小记
  4. ensp查看历史配置命令_网络工程师 | 手把手教你用华为ensp模拟器玩vxlan实验(静态方式)...
  5. mysql有热备设置_Mysql数据热备配置与操作方法
  6. linux cat 递归目录,实验二 linux文件目录操作
  7. vim之添加多行和删除多行
  8. 正则表达式的基本语法[转]
  9. 京东探索研究院 34 篇论文入选 CVPR 2022
  10. CVPR 2021 | 基于随机标签的神经架构搜索