(五)函数二

引用

什么是引用:变量是通过数据的内存起始地址读取数据的

a = 1 :表示变量a指向了1的内存起始地址

在python中,值是靠引用来传递来的。我们可以用id( )来判断两个变量是否为同一个值的引用。 我们可以将id值理解为那块内存的地址标示。

变量类型:

可变类型:修改变量数据,变量引用的地址没有发生变化        (列表、字典、集合)

不可变类型:如果修改内容,则变量的引用的地址会发生变化      (数字、字符串、元组、布尔类型)

{一旦重新赋值,内存地址必定改变}

不可变类型数据作为实参传递,修改形参,对实参没有影响

可变类型数据作为实参传递,修改形参,实参跟着发生改变;如若把形参重新赋值,修改形参,不会影响实参。

  • Python中函数参数是引用传递(注意不是值传递)
注:列表中:+=和=+是特列
    += :会把数据添加原先的列表后面
    =+:生成了一个新的列表

{扩展:哈希算法:能够通过一个数据计算出一个数字,相同数据的哈希值必定相同}

递归函数:

本身便是循环,一般不会使用

    必定需要一个结束的条件,不然陷入死循环

匿名函数:

用lambda关键词能创建小型匿名函数 (没有函数名定义) 

      lambda函数的语法只包含一个语句:lambda+表达式

# 格式:lambda arg1, arg2: arg1 + arg2    arg1, arg2:形参 arg1 + arg2:运算表达式
sum = lambda arg1, arg2: arg1 + arg2
# 调用sum函数
print("Value of total : " % sum( 10, 20 ))
print("Value of total : "% sum( 20, 20 ))

Lambda函数能接收任何数量的参数但只能返回一个表达式的值

匿名函数不能直接调用print,因为lambda需要一个表达式

匿名函数可以作为参数进行传递

附:字典排序:变量名.sort(key=匿名函数)

列表推导式:

ps:轻量级循环创建列表

>>a = [x for x in range(4)]
>> [0,1,2,3]

# 可多个for循环,多个变量接收

集合(set):

集合:大括号表示,无序,没有重复数据,不能通过下标获取

(只有增加和删除)

作用:进行去重转换类型(集合里不能有列表)

原文地址:https://www.cnblogs.com/qingchang/p/8973726.html

时间: 2024-11-10 15:45:41

(五)函数二的相关文章

QT开发(五十二)———QML语言

QT开发(五十二)---QML语言 QML是一种声明语言,用于描述程序界面.QML将用户界面分解成一块块小的元素,每一元素都由很多组件构成.QML定义了用户界面元素的外观和行为:更复杂的逻辑则可以结合JavaScript脚本实现. 一.QML基础语法 1.Import语句 QML代码中,import语句一般写在头几行,主要用途如下:     A.包含类型的全名空间     B.包含QML代码文件的目录     C.JavaScript代码文件 格式如下: import Namespace Ver

PostgreSQL学习手册(五) 函数和操作符

PostgreSQL学习手册(五) 函数和操作符 一.逻辑操作符:    常用的逻辑操作符有:AND.OR和NOT.其语义与其它编程语言中的逻辑操作符完全相同. 二.比较操作符:    下面是PostgreSQL中提供的比较操作符列表: 操作符 描述 < 小于 > 大于 <= 小于或等于 >= 大于或等于 = 等于 != 不等于 比较操作符可以用于所有可以比较的数据类型.所有比较操作符都是双目操作符,且返回boolean类型.除了比较操作符以外,我们还可以使用BETWEEN语句,如

四 指针与数组 五 函数

四 指针与数组 <一> 指针  就是地址 1 定义 int *p; 2 初始化 int a,*p=&a; 把a的地址给*p 指针变量有了谁的地址就是指向谁.则*p就代表了这个变量.*p代表 a 3 操作 int a ,*p=&a; *p=5;        <-----把5赋值给了a int *p,a; *p=[*&]a; | 抵消了 *p <=>a 等价 注意 : * 三个用途  1 乘法运算 2 取值运算符 3 说明符 定义时候用到 如 int a

C#中的函数(二) 有参有返回值的函数

接上一篇 C#中的函数(-) 无参无返回值的函数 http://www.cnblogs.com/fzxiaoyi/p/8502613.html 这次研究下C#中的函数(二) 有参有返回值的函数 依然写一个小例子,用来测试 跟上一个例子差不多,区别就是MyFunction有二个参数a,b,返回二个数相加的值 F5调试运行,中断后转到反汇编 这里很明显看到不同了 这里就得讲到参数传递的方式,参数从左向右依次存入寄存器ecx edx 但是不同的编程语言有不同的传递参数的方式,有空再写一篇文章介绍下 要

15 .内置函数(二),递归函数,二分法

14. 前 方 高能-内置函数 二 本节主要内容: lamda匿匿名函数 sorted() filter() map() 递归函数 一. lamda匿匿名函数为了了解决 一些简单的需求 而设计的 一句句话函数 # 计算n的n次 方 def func(n): return n**n print(func(10)) f = lambda n: n**n print(f(10)) lambda表 示的是匿匿名函数. 不需要 用def来声明,  一句句话就可以声明出 一个函数 语法: 函数名 = lam

第五十二个知识点:选择一个先进的应用概念,如电子投票,拍卖或多方计算。这样一个系统的大致安全需求是什么

第五十二个知识点:选择一个先进的应用概念,如电子投票,拍卖或多方计算.这样一个系统的大致安全需求是什么 这是我们认为每个密码学博士一年级都应该知道的52件事中的最后一件.你可能已经收集了过去的52个博客,我们希望学生知道从理论到实践的各个方面.但关键是你需要在密码学中考虑的不仅是对遵守规则的玩家的安全,还有对不遵守规则的玩家的安全.让我们从投票.拍卖和多方计算的角度来研究这个问题. 让我们先讨论一下三个应用程序的含义. 在投票中,我们根绝投票者进行一些投票方案(得票最多者当选.多选.赞成投票或其

第五十二课、命令行参数的应用

一.主窗口的状态参数 1.主窗口的状态参数 (1).应用程序必须保存和恢复主窗口的状态参数(位置.大小等) 2.应用程序退出的过程 (1).收到关闭事件 (2).执行关闭事件处理函数 (3).主窗口从屏幕上消失 (4).主窗口的析构函数执行 3.一般而言 (1).应用程序在收到关闭事件时进行状态参数的保存 4.Qt中的解决方案 (1).重写关闭事件处理函数 (2).在关闭事件处理函数中保存状态参数 文本编辑器改变: AppConfig.h:增加了两个与主窗口相关的变量及相关函数,则构造函数的参数

笨鸟学php(五) 函数的声明与使用

1.函数的声明 <?php /** * function 函数名(参数1, 参数2.... ){ * 函数体; * 返回值; * } */ $sum = sum(3, 4); echo $sum; function sum($x, $y){ $sum = 0; $sum = $x * $x + $y + $y; return $sum; } ?> 2.变量的范围 局部变量: 在函数中声明的变量就是局部变量, 只能在自己的函数内部使用. 全局变量: 在函数外声明的变量就是全局变量, 在变量声明以

0046-简单的分段函数(二)

简单的分段函数(二) 难度级别:A: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 已知下列分段函数,要求编一程序,输入 x,输出相应的 y 的值.分段函数: 输入 一个double类型的数 x 输出 一个double类型的数 y 输入示例 5 输出示例 20 和简单的分段函数(一)异曲同工. 代码: #include<bits/stdc++.h> using namespace std; double x; int main() {

python之内置函数(二)与匿名函数、递归函数初识

一.内置函数(二)1.和数据结构相关(24)列表和元祖(2)list:将一个可迭代对象转化成列表(如果是字典,默认将key作为列表的元素).tuple:将一个可迭代对象转化成元组(如果是字典,默认将key作为元组的元素) 2.相关内置函数(2)reversed:将一个序列翻转,并返回此翻转序列的迭代器. *****slice:构造一个切片模板,用于列表的切片.*** 2-1.reversed()与列表的reverse()区分:列表的reverse()只能列表使用:列表.reverse(),对原列