Python:笔记(2)——函数与模块

Python函数

关于函数

  1、我们可以使用Help来查看函数的帮助信息

  

  2、调用函数的时候,如果传入的参数数量或者类型不符合均会报错

  

  3、函数名其实就是一个指向函数对象的引用,可以把函数名赋给一个变量,从而给函数起了别名

  

定义函数

  定义一个函数需要用到def语句,依次写出函数名、括号、参数和冒号:,在缩进块中编写函数体,用return语句返回结果。

  

关于自定义函数

  1、使用PASS来代替操作

  

  2、手动进行类型检测

  

  3、返回多个值

  

函数的参数

  1、默认参数

  

说明:必选参数在前,默认参数在后,否则Python的解释器会报错

  2、可变参数

  

  3、关键字参数

  

说明:**extra表示把extra这个dict的所有key-value用关键字参数传入到函数的**kw参数,kw将获得一个dict,注意kw获得的dict是extra的一份拷贝,对kw的改动不会影响到函数外的extra

  4、命名关键字参数

  

说明:定义命名的关键字参数在没有可变参数的情况下不要忘了写分隔符*,否则定义的将是位置参数。

  5、在Python中定义函数,可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参数,这5种参数都可以组合使用。但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数

模块

说明:

  模块是一系列相关的函数和变量。模块是一个由函数组成的工具箱,用于编写其他程序。因此模块通常没有main()函数

  模块中涉及到了命名空间的概念。实际上就是给模块中的函数增加了一个前缀,以免导入多个模块使用时出现同名函数,产生二义性

模块的作用域

  • 正常的函数和变量名是公开的(public),可以被直接引用,比如:abcx123PI等;
  • __XXX__,这种形式的变量是特殊变量,可以直接引用,但是有特殊用途,我们的变量不要用这种格式。
  • _XXXXX,这样的函数或变量就是非公开的(private),不应该被直接引用,比如_abc__abc等;

说明:之所以我们说,private函数和变量“不应该”被直接引用,而不是“不能”被直接引用,是因为Python并没有一种方法可以完全限制访问private函数或变量,但是,从编程习惯上不应该引用private函数或变量。

导入模块:

1 import div #创建一个新的命名空间。并在该命名空间中执行.py文件相关的所有语句
2 import div as foo #使用不同的名称导入模块
3 from div import funcation1 #将具体的定义加载到当前命名空间
4 from div import * #将模块的所有内容加载到当前命名空间 

使用模块的功能:

 div.funcation1() #命名空间为默认的模块名 div
foo.funcation1() #命名空间为自定义的 foo
funcation1() #已加入到当前命名空间,不需要加前缀

Python:笔记(2)——函数与模块的更多相关文章

  1. Python基础之函数和模块

    函数的基本使用 函数的定义:把具有独立功能的代码块组织成一个小模块,在需要的时候调用.或者说,函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数的使用:1.定义函数:2.调用函数 ...

  2. [Python笔记]第十篇:模块续

    requests Python标准库中提供了:urllib等模块以供Http请求,但是,它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简 ...

  3. [Python笔记]第八篇:模块

    本篇主要内容:python常用模块用法介绍 什么是模块 模块,用一大段代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性 ...

  4. A Byte of Python 笔记(6)模块

    第8章 模块 用户在程序中定义一次函数而重用代码,如果用户想在其他程序中重用很多函数,可以通过使用模块的方式. 模块就是一个包含了所有用户定义的函数和变量的文件.为了在其他程序中重用模块,模块的文件名 ...

  5. python内置函数 和模块函数总结

    1.内置函数(无需导入)long() 函数将数字或字符串转换为一个长整型.len() 统计元素个数print() 打印,输出input() 输入,或阻塞程序运行type 获取类型range 产生连续的 ...

  6. python笔记22-literal_eval函数处理返回json中的单双引号

    前言 在做接口测试的时候,最常见的接口返回数据就是json类型,json类型数据实际上就是字串,通常标准的json格式是可以转化成python里面的对应的数据类型的 有时候开发返回的数据比较坑,不按常 ...

  7. python笔记-9(subprocess模块、面向对象、socket入门)

    一.subprocess 模块 1.了解os.system()与os.popen的区别及不足 1.1 os.system()可以执行系统指令,将结果直接输出到屏幕,同时可以将指令是否执行成功的状态赋值 ...

  8. python笔记-8(logging模块、re模块、栈与队列)

    一.Logging模块日志 1.logging导入 Import logging 2.知道5个日志级别的等级关系 Debug->info->warning->error->cr ...

  9. python笔记6:常用模块

    模块,模块就是封装了特殊功能的代码. 模块分为三种: 自定义模块 第三方模块 内置模块 1.自定义模块 自定义模块就是自己定义的模块,如何import自定义模块,如下: (1)主程序与模块程序在同一目 ...

随机推荐

  1. js 获取浏览器显示内容的宽度和高度

      js获取浏览器显示内容的宽度和高度 CreateTime--2017年7月10日17:24:12Author:Marydon 1.获取浏览器屏幕显示d的网页宽度 /** * 得到浏览器显示的屏幕高 ...

  2. 微信小程序 - 豆瓣同城

    代码地址如下:http://www.demodashi.com/demo/12121.html 一.准备工作 软件环境:微信开发者工具 官方下载地址:https://mp.weixin.qq.com/ ...

  3. java中常用的类型转换

    1.将字符串转换成整数(String--->int)方法一: (1)  int i = Integer.parseInt(String s);  其中(1)其实就是我们经常用到的将s转换为10进 ...

  4. 自己定义控件三部曲视图篇(二)——FlowLayout自适应容器实现

    前言:我最大的梦想,就是有一天.等老了坐在摇椅上回望一生,有故事给孩子们讲--. 相关文章: <Android自己定义控件三部曲文章索引>:http://blog.csdn.net/har ...

  5. css 控制文本显示两行 超过省略号显示

    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; word-break: break-all; ov ...

  6. 细说Redirect重定向请求(情节分享)

         前些日子在开发公司项目接口的时候,由于需要与第三方平台对接,由于接口之前的层层封装,不断的需要转发,把人差点搞糊涂了.本来以为之前对Redirect的认识足够清楚,可是到实际开发之前我还是没 ...

  7. C#中使用泛型对照使用通用基础类型效率减少近一倍

     C#中使用泛型对照使用通用基础类型效率减少近一倍 以下是測试结果: CSharp class and generic TotalMilliseconds: 270772.9229CSharp g ...

  8. iOS CAGradientLayer白色渐变至上向下

    项目需求当显示富文本内容高度太高的的时候不全部显示出来,而是显示查看更多按钮,当点击查看更多时把全部内容展开.同时未展开部分要加一个渐变模糊的效果. 上效果图: 这里要用到CAGradientLaye ...

  9. 怎样在OpenStack上安装Ubuntu系统

    转载请注明出处,否则将追究法律责任http://blog.csdn.net/xingjiarong/article/details/47011893 OpenStack是一个Iaas即基础即服务的云架 ...

  10. Sql Server 查询一段日期内的全部礼拜天

    /* 查询一段日期内的全部礼拜天 @startdate 開始日期 @enddate 结束日期 */ declare @startDate datetime declare @endDate datet ...