def test(x):       # x代表形参'''2*x+1:param x:整形数字:return:返回计算结果'''y = 2*x+1return y
p = test(3)     # test()表示运行名为test函数,3代表实参,给x进行赋值
print(p)

函数的定义:

  • def: 表示函数的关键字
  • 函数名: 函数的名称, 根据函数名调用函数
  • 函数体: 函数中进行一系列的逻辑计算
  • 参数: 为函数执行完毕后, 可以给调用者返回数据

一. 为什么要用函数?

  • 减少代码量
  • 保持一致性
  • 易维

二. 函数的参数

函数有三种不同的参数:

  • 普通参数
########## 定义函数 #########
# name 叫做函数func的形式参数,简称:形参
def func(name):print name########## 执行函数 #########
#  'peiqi' 叫做函数func的实际参数,简称:实参
func('peiqi')
  • 默认参数
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def func(name, age = 18):print "%s:%s" %(name,age)# 指定参数
func('peiqi', 19)
# 使用默认参数
func('alex')

注:默认参数需要放在参数列表最后

  • 动态参数 *args
def func(*args):print args# 执行方式一
func(11,33,4,4454,5)# 执行方式二
li = [11,2,2,3,3,4,54]
func(*li)
  • 动态参数 **kwargs
def func(**kwargs):print args# 执行方式一
func(name='peiqi',age=18)# 执行方式二
li = {'name':'peiqi', age:18, 'gender':'male'}
func(**li)

三. 函数的变量

函数的变量可分为 全局变量和局部变量

全局变量(大写)

定义:没有缩进的变量

局部变量(小写)

定义:子程序下定义的变量

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
name = 'python'                 # 这里就指全局变量def chan_name():name = '帅了一比'      # 这里就指局部变量print('chan_name', name)chan_name()
print(name)    #结果
chan_name 帅了一比
python

global和nolocal

global声明是全局变量,nolocal指定上一级变量

未声明全局变量

x = 99
def func():x = 88
func()
print(x)     #输出99

声明全局变量

x = 99
def func()global xx = 88
func()
print(x)    #输出88

未指定上一级变量

def func():count = 1def foo():count = 12foo()print(count)
func()    #输出1

指定上一级变量

def func():count = 1def foo():nonlocal countcount = 12foo()print(count)
func()     #输出12

四. 递归函数

ps: 用的好的都是大牛~

就是函数自己调用自己

特性:

  • 必须有一个明确的结束条件,

  • 每次进入深一层递归时,问题规模都应有所减少

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def calc(n):print(n)if int(n / 2) == 0:return n # 当上面的条件成立后一个真值,返回到函数res = calc(int(n / 2))    print(n,res) return res # 返回res的值,要将真值一层一层传递回去calc(10)

五. lamabda匿名函数

lambda用法,冒号之前的是入参,冒号之后的是表达式,返回的值,最简单的函数

print [(lambda x:x*x)(x)for x in range(11)]
#结果:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
print (lambda x:x*x)(3)
#结果:9
g=lambda x:x*x
print g(4)
#结果:16

Python函数的定义和使用相关推荐

  1. python函数参数定义不合法_下列哪种函式参数定义不合法?

    python 函数参数定义有四类: 1,必选参数:调用函数时候必须赋值的参数. a,须以正确的顺序传入函数 b,调用时的数量必须和声明时的一样 def exa(x): return x #b作为参数进 ...

  2. python函数定义及调用-python函数的定义和调用 | 酷python

    python函数的定义与调用 在python中 ,函数是一个组织好的 ,可以重复使用的代码段 ,函数可以提高代码的重复利用率 ,原则上一个函数只实现一个单一的功能 ,这样能增强程序的模块性, pyth ...

  3. python函数参数定义顺序_18 Python - 函数定义与参数

    12 函数定义与参数 01函数 (1)定义: def 函数名(参数1,参数2--): 函数体 return 结果 (2)调用: 函数名(实际参数) (3)函数作用: 最大化代码重用, 最小化代码冗余, ...

  4. python函数参数定义_python函数定义中的5种参数

    python函数参数定义 Python函数定义中的5种参数类型: (5 Types of Arguments in Python Function Definition:) default argum ...

  5. Python函数的定义和使用教程

    def test(x): # x代表形参'''2*x+1:param x:整形数字:return:返回计算结果'''y = 2*x+1return y p = test(3) # test()表示运行 ...

  6. 20 Python函数、定义一个函数、参数传递、匿名函数、return语句、变量作用域、

    20Python函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你 ...

  7. python函数参数定义顺序_Python函数定义-位置参数-返回值

    原标题:Python函数定义-位置参数-返回值 1 函数介绍 函数在编程语言中就是完成特定功能的一个词句组(代码块),这组语句可以作为一个单位使用,并且给它取一个名字.可以通过函数名在程序的不同地方多 ...

  8. python函数的定义及使用

    一.函数的定义与使用 1)函数的定义: 1.函数是一种功能抽象, 是一段具有特定功能的.可重用的语句组,用函数名来表示并通过函数名完成功能调用.l 2.函数也可以看作是一段具有名字的子程序,可以在需要 ...

  9. python函数的定义

    # 函数定义 ## 函数概述 1.在程序设计中,函数的使用可以提升代码的复用率和可维护性.(代码的复用率: 程序设计中,一些代码的功能是相同的,操作是一样的,只不过针对的数据不一样.此种情况下,可以将 ...

最新文章

  1. Spring Cloud 中国社区一周年技术沙龙-北京站
  2. OCA读书笔记(6) - 配置Oracle网络环境
  3. python里感叹号什么意思_仪表盘上的感叹号是什么意思
  4. R语言max函数min函数计算各种数据对象最大值最小值实战
  5. 最新:全球大型数据中心总数增至597个,是2015年数据中心数量的两倍
  6. 仿Gin搭建自己的web框架(七)
  7. 使用.NET Core 编写端到端测试
  8. 一文读懂 | CPU负载均衡实现
  9. 关于Cocoa框架的争论
  10. 软件工程 java实现_软件工程作业——WC Java实现
  11. arm指令集 c语言,这些Cortex-A处理器支持的指令集,您都知道吗?
  12. 海思烧录工具Hitool使用方法
  13. 二阶系统阶跃响应实验_二阶系统阶跃响应实验心得体会
  14. Java毕设项目大学生旅游拼团网站计算机(附源码+系统+数据库+LW)
  15. PHP距离春节还剩多少天,距离2019年春节还剩多少天 2019春节倒计时多少天
  16. Informatica优化 - DTM Buffer Size
  17. uniapp中h5版uni.chooseimage直接上传图片(图片路径blob:http://xxxx/xxxx)到阿里云oss上,获取图片名称并成功显示图片
  18. 电脑W ndoWs未能启动怎么办,Win7系统电脑开机显示“Windows未能启动”的解决方法...
  19. 2021.12.21报错解决:jquery.min.js:5 POST http://localhost:3000/login 400 (Bad Request)
  20. lotus miner 元数据 删除 重建

热门文章

  1. 彻底明白Java语言中的IO系统
  2. 数据库连接字符串大全
  3. 开篇语 2008.8.11
  4. unity 继承会调用start吗_Unity 继承MonoBehaviour脚本 执行顺序 详解
  5. 【转】SAP Cloud Platform平台下,ABAP人员的出路在哪里
  6. 【转:SAP学习篇】Fiori 的开发工具
  7. IT人员健康信号之肠胃保养
  8. SAP主数据与业务数据的一致性问题
  9. 比尔•盖茨因握手方式失礼遭韩媒狂批
  10. SD--订单最小量限制的增强