Python:笔记(2)——函数与模块
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),可以被直接引用,比如:
abc
,x123
,PI
等; - __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)——函数与模块的更多相关文章
- Python基础之函数和模块
函数的基本使用 函数的定义:把具有独立功能的代码块组织成一个小模块,在需要的时候调用.或者说,函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数的使用:1.定义函数:2.调用函数 ...
- [Python笔记]第十篇:模块续
requests Python标准库中提供了:urllib等模块以供Http请求,但是,它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简 ...
- [Python笔记]第八篇:模块
本篇主要内容:python常用模块用法介绍 什么是模块 模块,用一大段代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性 ...
- A Byte of Python 笔记(6)模块
第8章 模块 用户在程序中定义一次函数而重用代码,如果用户想在其他程序中重用很多函数,可以通过使用模块的方式. 模块就是一个包含了所有用户定义的函数和变量的文件.为了在其他程序中重用模块,模块的文件名 ...
- python内置函数 和模块函数总结
1.内置函数(无需导入)long() 函数将数字或字符串转换为一个长整型.len() 统计元素个数print() 打印,输出input() 输入,或阻塞程序运行type 获取类型range 产生连续的 ...
- python笔记22-literal_eval函数处理返回json中的单双引号
前言 在做接口测试的时候,最常见的接口返回数据就是json类型,json类型数据实际上就是字串,通常标准的json格式是可以转化成python里面的对应的数据类型的 有时候开发返回的数据比较坑,不按常 ...
- python笔记-9(subprocess模块、面向对象、socket入门)
一.subprocess 模块 1.了解os.system()与os.popen的区别及不足 1.1 os.system()可以执行系统指令,将结果直接输出到屏幕,同时可以将指令是否执行成功的状态赋值 ...
- python笔记-8(logging模块、re模块、栈与队列)
一.Logging模块日志 1.logging导入 Import logging 2.知道5个日志级别的等级关系 Debug->info->warning->error->cr ...
- python笔记6:常用模块
模块,模块就是封装了特殊功能的代码. 模块分为三种: 自定义模块 第三方模块 内置模块 1.自定义模块 自定义模块就是自己定义的模块,如何import自定义模块,如下: (1)主程序与模块程序在同一目 ...
随机推荐
- 使用 react-native-tab-navigator 创建 TabBar 组件
1.首先安装好ReactNative的运行环境,安装组件依赖库 使用npm install react-native-tab-navigator --save安装所依赖的第三方库 2.导入 impor ...
- js 将内容复制到剪贴板
js 将内容复制到剪贴板 CreationTime--2018年7月1日15点06分 Author:Marydon function copyToClipboard(txt) { if(windo ...
- mongo: 删
删除:remove db.CollectionName.remove(查询表达式,选项); 查询表达式:匹配要删除的文档,它是一个json对象 选项:{justOne:true/false},是否只删 ...
- servlet监听器与事件
前言 在Servlet 2.4/JSP 2.0中,共同拥有八个Listener接口,六个Event类别. 參考:Servlet中的八大Listener 入门 阅读文件夹 Web监听器 监听器的分类 S ...
- mongoDB Java SDK CRUD操作例子
Example: package com.sdfwerwer.test; import java.net.UnknownHostException; import com.mongodb.Basi ...
- J2EE之字符编码输出
1. public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletExcepti ...
- Android实践--监測网络状态
Android 监測网络状态 我们在使用Android手机时候,一些APP须要网络环境才干执行,所以手机须要可用的网络,无论是2G.3G或者WIFI.甚至有一些比較耗流量的APP仅仅能在WI ...
- setpgid()
#include<unistd.h> int setpgid(pid_t pid,pid_t pgid); 函数作用:将pid进程的进程组ID设置成pgid,创建一个新进程组或加入一个已存 ...
- [转载]Axure RP 7.0下载地址及安装说明
Axure RP是产品经理必备的原型制作工具,因为很多同学是新手,在这里整理一下axure7.0的下载.安装和汉化流程,希望能够帮到大家. Axure RP是美国Axure Software Solu ...
- Android Studio gradle 文件中 ${supportLibVersion} 用法
一般我们在项目中的gradle会添加如下库文件 dependencies { compile 'com.android.support:appcompat-v7:23.1.0' compile 'co ...