python基础之引用和匿名函数

a=1  #1 为对象,
def func(x):
    print('x的地址{}'.format(id(x)))
    x=2
    print('x的地址{}'.format(id(x)))
    pass
# 调用函数
print('a的地址:{}'.format(id(a)))
func(a)

# 不可变类型
a=1  #1 为对象,  ##传递的是一个对象的引用,并不是一个值
def func(x):
    print('x的地址{}'.format(id(x)))
    x=2
    print('x的地址{}'.format(id(x)))
    print(x)
    pass
# 调用函数
print('a的地址:{}'.format(id(a)))
func(a)
print(a)

# 可变类型
# 可变函数
li=[]
def testRenc(parms):
    li.append([1,2,3,4,5])
    print(id(parms))
    li.append([1,3,4,5])
    pass
print(id(li))
testRenc(li)
print('外部的变量对象{}'.format(li))

# 匿名函数
# 语法:
# lambda 参数1、参数2、参数3:表达式
# 特点
# 1.使用lambda关键字创建函数
# 2.没有名字的函数
# 3.匿名函数冒号后面的表达式有且只有一个,注意:是表达式而不是语句
# 4.匿名函数自带return,而这个return的结果就是表达式计算后的结果
# 缺点
# lambda只能是单个表达式,不是一个代码块,lambda设计就是为了满足简单的函数场景,仅仅能封装有限的逻辑.复杂逻辑情况使用def标准函数逻辑,无法实现复杂逻辑
def computer(x,y):
    '''
    计算数据和
    :param x:
    :param y:
    :return:
    '''
    return x+y
print(computer(10,20))
# 使用匿名函数
M=lambda x,y:x+y
# 通过变量来调用匿名函数
print(M(23,19))

result=lambda a,b,c:abc
print(result(12,343,5))

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • python基础之函数

    函数: # 什么是函数:一系列python语句的组合,可以在程序中运行一次或者多次 # 一般是完成具体的独立的功能 # 为什么要使用函数 # 代码的复用最大化以及最小化冗余代码,整体代码结构清晰,问题局部化 # 函数定义: # def 函数名() # 函数体[一系列的python语句,表示独立的功能] # 函数的调用: # 本质上就是去执行函数定义里面的代码块.在调用函数之前,必须先定义 printInfo() #函数的调用 函数名()#函数的调用 def printInfo(name,heig

  • python基础之局部变量和全局变量

    四种基本的函数类型 局部变量 就是在函数内部定义的变量[作用域仅局限于函数内部] 不同的函数 可以定义相同的局部变量,但是各自用各自的 不会产生影响 局部变量的作用:为了临时的保存数据 需要在函数中定义来进行存储 全局变量 作用域为全局的变量 如果在函数内部想要对全局变量进行修改,必须使用Global关键字进行声明 局部变量 def printInfo(): name='peter' ##局部变量,只作用于printInfo函数,函数体之外无法使用 print('name') pass def

  • python基础之字典

    字典 # 字典:也是python中重要的数据类型,字典是由键值对组成的集合 # 通常使用 键来访问数据,效率非常高,和list一样支持对数据的添加.修改和删除操作 # 特点: # 1.不是序列类型,没有下标的概念,是无序的键值集合,是python中内置的高级数据类型' # 2.使用{}来表示字典对象,每个键值对使用逗号来分割 # 3.其键必须是不可变的类型[元组.字符串] 值可以是任意类型 # 4.每个键必定是唯一的,如果存在重复的键,那么后者会覆盖前者,产生覆盖 # 如何创建字典 dicta=

  • python基础之输入与输出

    目录 Python的输入与输出 输出 输入 总结 Python的输入与输出 输出 通过字符串格式化优化不必要的重复输出 %占位符来优化 # 输出 % 占位符,实现字符串可视化输出 name='张扬' classpro='清华附中一年级三班' print('我的名字是%s:来自班级[%s]'%(name,classpro)) # 练习输出 name='老夫子' QQ='666666666' phone='77777777777' address='xian' print('============

  • python基础之变量和数据类型

    目录 变量和数据类型 Python中变量的命名规则 总结 变量和数据类型 赋值不需要指定类型,如何定义变量 # 定义 规则 变量名=数据 a=10 #python不声明数据类型,所以在定义变量时必须赋值 a=10 #python不声明数据类型,所以在定义变量时必须赋值 a=20 print(a) #使用a 先定义变量,然后才可使用,变量可以改变 # 在程序执行过程中可以该改变值 值可以直接改变,无需定义. 从pycharm直接进入python终端 通过变量来实现数值取用 输出元素类型 print

  • python基础之基本运算符

    目录 Python基本运算符 算数运算符 比较运算符 逻辑运算符 赋值运算符 总结 Python基本运算符 算数运算符 # + - * / % ** // 算数运算符 # 定义如下运算符 a=7 b=3 print(a+b) print(a-b) print(a*b) print(a/b) print(a%b) print(a//b) # 地板除,相除取整,也可进行复合运算 比较运算符 # == != < > >= <= 比较运算符 a,b=10,5 print(a==b) pri

  • python基础之引用和匿名函数

    a=1 #1 为对象, def func(x): print('x的地址{}'.format(id(x))) x=2 print('x的地址{}'.format(id(x))) pass # 调用函数 print('a的地址:{}'.format(id(a))) func(a) # 不可变类型 a=1 #1 为对象, ##传递的是一个对象的引用,并不是一个值 def func(x): print('x的地址{}'.format(id(x))) x=2 print('x的地址{}'.format(

  • Python基础学习之时间转换函数用法详解

    本文实例讲述了Python基础学习之时间转换函数用法.分享给大家供大家参考,具体如下: 前言 python的时间格式分为多种,几种格式之间的转换方法时常是我们遇到的而且是经常忘记的点,python不像php,时间字符串和datetime是一起的,只需要strtotime和date函数就可以相互转化.虽然网上已经有很多python时间转换的文章,但是由于作者本人经常做海外业务,需要各种时区之间的转换,所以这篇文章会对按时区转换各种时间格式做一个总结. 转换方法图示(图片转自网络): 一.字符串转时

  • Python基础学习之简单理解函数

    一.什么是函数 注意不要和数学中的函数搞混了 那么到底什么是函数呢? 函数其实就是当我们在程序中需要大量重复的代码块,我们将其封装成一个代码块,用一个名字来表示,而这个名字是标识符.需要遵循标识符的规则. 函数的优点就是避免了代码重复率,提高开发效率. 举个例子:我们需要让电脑给我们表白(骚话),输出一段情话,就比如这一段 "我爱你" "我要给你生猴子" "啊啊啊,好喜欢你" 按照之前所学,一个一个的print()就行了嘛 但是我需要你什么时候都

  • Python基础globlal nonlocal和闭包函数装饰器语法糖

    目录 一.global与nonlocal 1.global 2.nonlocal 二.函数名的多种用法 三.闭包函数 1.什么是闭包函数 2.闭包函数需满足的条件 3.闭包函数的作用 4.闭包函数的实际应用 四.装饰器 1.装饰器推导流程 2.装饰器语法糖 3.装饰器模板 一.global与nonlocal 1.global 在py文件中,一般无法调用函数体内变量名,而global可使函数体代码内的变量名直接在函数体外部调用,条件是在需要调用的代码体中使用global 调用需要的变量名 未使用g

  • python基础之reverse和reversed函数的介绍及使用

    目录 一.reverse 二.reversed 附:Python中reverse和reversed反转列表的操作方法 总结 一.reverse reverse()是python中列表的一个内置方法(在字典.字符串和元组中没有这个内置方法),用于列表中数据的反转 例子: lista = [1, 2, 3, 4] lista.reverse() print(lista) 打印结果: [4, 3, 2, 1] 其实,lista.reverse()操作的返回值是一个None,其作用的结果需要通过打印被作

  • 举例讲解Python的lambda语句声明匿名函数的用法

    所谓匿名函数,即是不需要定义函数,像表达式一样使用,不需要函数名(很多时候名字让我很困扰),一些简单的函数简单化, 举个例子 我需要两个整数相加的函数,通常是这么定义的 def add(x, y): return x + y 很好的完成了我需要的功能, 但是我现在需要一个数字与字符串相加的函数 def addstr(x, y): return x + str(y) 又一次完成了我的需求,但是 我突然需要两个整数相减,相除的功能这样函数就得 一直写下去, 但是使用lambda 匿名函数可以直接使用

  • python教程之生成器和匿名函数

    目录 生成器 01 什么是生成器? 02 通俗的讲解 03 生成器到底有什么用? 04 生成器的常见用途? 匿名函数 01 什么是匿名函数? 02 通俗的讲解 总结 生成器 01 什么是生成器? 记住两个关键: **生成器是一种特殊的函数方法.**意味着它和函数(def)密不可分. 基于上一点,只要函数中出现yield关键字,就是生成器函数. 初学的你,还是太难理解? 02 通俗的讲解 你可以将生成器理解为一个盒子,你可以向这个盒子里随意添加元素,当你需要的时候,再取出来用. 请看下面的例子:

  • Python基础之字符串操作常用函数集合

    Python字符串常用功能汇总 1.字符串的定义 #定义空字符串>>> name=''#定义非空字符串 >>> name="luoahong"#通过下标访问 >>> name[1] 'u'#不能修改字符串的值,否则会报错 >>> name[2] = "3" Traceback (most recent call last): File "<stdin>", lin

  • python基础之匿名函数详解

    目录 1.匿名函数介绍 2.语法 3.使用场景 4.匿名函数和普通函数的对比 5.匿名函数的多种形式 6.lambda 作为一个参数传递 7. lambda函数与python内置函数配合使用 8.lambda 作为函数的返回值 1.匿名函数介绍 匿名函数指一类无须定义标识符的函数或子程序.Python用lambda语法定义匿名函数,只需用表达式而无需申明. 在python中,不通过def来声明函数名字,而是通过 lambda 关键字来定义的函数称为匿名函数. lambda函数能接收任何数量(可以

  • python基础教程之匿名函数lambda

     python lambda 当我们在使用函数时,有时候,并不需要显示的定义一个函数,我们可以使用匿名函数更加方便,在Python中对匿名函数也提供了支持. 比如当我们想计算两个数a,b之和时,即f(a,b) = a + b.我们可以有两种方法完成,第一种就是显示的定义一个函数f(x,y),然后将参数传进去得到结果.第二种方式就是使用匿名函数了. f = lambda x,y:x+y >>>f(1,2) 3 匿名函数lambda x,y:x+y实际上就是: def f(x, y): re

随机推荐