学习python函数笔记之一
1、函数文档字符串,用于存放函数的说明,一般写在第一行

2、函数调用:函数名+参数列表(函数的参数分实际参数和形式参数,str就是形式参数,则‘welcome 头 python’就是实际参数)

参数需要一一对应,形式参数有几个,就需要传几个实际参数,否则会报错,如图有一个形式参数x,却传了两个实际参数1,2

在调用函数时,缺省参数的值如果没有传入,则被认为是默认值


如果调用函数和定义函数同时有值得情况下,默认值就会被覆盖,输出以调用值的参数为准

在传值时从左到右传值

如果这样就会报Syntax error,因为x已经有值了

需要调换x,y的位置,则就不会报错了

函数的多类型传值: (多类型传值并不是说可以传递任意类型的值)


向函数传元组:
根据索引


指定传参

也可以在定义的元组名前加*(表示传递元组内的全部参数)


向函数传字典:
指定传参

也可以在定义的元组名前加**(表示传递字典内的全部参数)


字典内的key也是要与形式参数一一对应的,否则也会报错

*如果像这种不一样的情况下,就必须指定参数:(dict[key]=value)

处理冗余参数:
因为形式参数只有一个,但是却传了三个,显然就会报错:

什么情况下不报错呢,可以这样写形参,也就是用*args(*可以传递元组,也可以用来接收元组,args可以随便定义)

处理映射关系的时候要用到字典,同样**用来接收字典

3、函数返回值return
1>可以返回任意数据类型,默认为None


2>执行完return,函数退出


3>注意区分return和print


把print换成return


4、函数的全局变量和局部变量:
函数内部的a=2重新赋值并没有起作用,a=2只在函数内部起作用


函数中定义的数只能在函数中起作用,否则会报错


如果函数中定义要想在函数外使用的情况下,可以变量名前面加上global来进行定义


定义的全局边变量只有在调用的时候才能起作用,否则不起作用




5、Python匿名函数
lambda函数是一种快速单行定义函数的方法,使代码更简洁,避免了不必要的函数体定义
格式:lambda x,y:x*y(计算x*y)


reduce函数:逐次操作list的每项,接受的参数是两个,最后返回一个结果

用lambda和reduce函数一行就可以实现1+2+3+........+100之和:


学习python函数笔记之一的更多相关文章
- 学习Python函数笔记之二
---恢复内容开始--- 1.内置函数:取绝对值函数abs() 2.内置函数:取最大值max(),取最小值min() 3.内置函数:len()是获取序列的长度 4.内置函数:divmod(x,y),返 ...
- 学习Python函数笔记之二(内置函数)
---恢复内容开始--- 1.内置函数:取绝对值函数abs() 2.内置函数:取最大值max(),取最小值min() 3.内置函数:len()是获取序列的长度 4.内置函数:divmod(x,y),返 ...
- python初步学习-python函数(一)
python 函数 函数是组织好的,可重复使用的,用来实现单一或者相关联功能的代码段. 函数能提高应用的模块性和代码的重复利用率. 函数定义 python中函数定义有一些简单的规则: 函数代码块以de ...
- 学习python3函数笔记
Python内置了很多有用的函数,我们可以直接调用. 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数.可以直接从Python的官方网站查看文档: http://doc ...
- 廖雪峰网站:学习python函数—函数参数(三)
1.*args # 位置参数,计算x2的函数 def power(x): return x * x p = power(5) print(p) # 把power(x)修改为power(x, n),用来 ...
- 廖雪峰网站:学习python函数—调用函数(一)
# 调用函数 # 可以直接从Python的官方网站查看文档: # http://docs.python.org/3/library/functions.html#abs n = abs(100) # ...
- python初步学习-python函数 (二)
几个特殊的函数(待补充) python是支持多种范型的语言,可以进行所谓函数式编程,其突出体现在有这么几个函数: filter.map.reduce.lambda.yield lambda >& ...
- 廖雪峰网站:学习python函数—递归函数(四)
# 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数 # 计算阶乘n! = 1 x 2 x 3 x ... x n,用函数fact(n)表示,可以看出: # fact ...
- 廖雪峰网站:学习python函数—定义函数(二)
def my_abs(x): if x >= 0: return x else: return -x print(my_abs(-99)) # 空函数 def nop(): pass # 参数检 ...
随机推荐
- 基於tiny4412的Linux內核移植--- 中斷和GPIO學習(2)
作者 彭東林 pengdonglin137@163.com 平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uIma ...
- The Road To Hadoop(网盘系统的实现)
因为毕业设计的原因,得从零开始学习hadoop.虽然接触Hadoop也有一段时间了,但是没有一个完整的时间段去学习,在公司实习的同时,只能利用零零碎碎的时间学习,今天完成了第一个版本的基于Hadoop ...
- ionic之$ionicGesture手势(大坑)
鄙人来本公司前未用过ionic框架,但由于ionic是基于angularjs封装的,正好我用过angularjs,很荣幸的面试就过了,然后通过该网站http://www.ionic.wang(后面简称 ...
- 你真的会玩SQL吗?表表达式,排名函数
你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接.外连接 你真的会玩SQL吗?三范式.数据完整性 你真的会玩SQL吗?查询指定节点及其所有父节 ...
- ASP.NET Core 中文文档 第三章 原理(4)路由
原文:Routing 作者:Ryan Nowak.Steve Smith. Rick Anderson 翻译:张仁建(Stoneqiu) 校对:许登洋(Seay).谢炀(kiler398).孟帅洋(书 ...
- 微信小程序的应用及信息整合,都放到这里了
微信小程序终于开始公测了,这篇文章也终于可以发布了. 这篇文章可以说是微信小程序系列三部曲最后一篇.8 月份,小程序推出前,我写了<别开发 app 了>详细阐述了为什么创业应该放弃原生 a ...
- 使控件具有 Tilt 效果
步骤1:添加类: /* Copyright (c) 2010 Microsoft Corporation. All rights reserved. Use of this sample source ...
- Node基础篇(概要)
Node简介 客户端的JavaScript是怎样的 什么是 JavaScript? 脚本语言 运行在浏览器中 一般用来做客户端页面的交互(Interactive) JavaScript 的运行环境? ...
- 基于HTML5 Canvas 实现矢量工控风机叶轮旋转
之前在拓扑上的应用都是些静态的图元,今天我们将在拓扑上设计一个会动的图元--叶轮旋转. 先看看最后我们实现的效果:http://www.hightopo.com/demo/fan/index.html ...
- MVC 传值
1.ViewBag Controller:ViewBag.Message = "Hello, Word"; View:@ViewBag.Message 注:View ...