python 范儿编程--花样传参 下|学习笔记

简介: 快速学习 python 范儿编程--花样传参 下

开发者学堂课程【高校精品课-华东师范大学 - Python 数据科学基础与实践 python 范儿编程--花样传参 下】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1067/detail/15353


python 范儿编程--花样传参 下

 

内容分析:

一、花样传参

二、带默认值的参数

三、变量之变:深浅拷贝

四、异常处理: Try - Except - Else - Finally

 

一、花样传参

1、复习:已知花样传参能把列表加星号保持有序地作为一个个参数传给方法/函数

星号*:把后面的变量里面的一个个元素拿出来作为参数传递,而不是一个变量本身作为一个整体。

2、示例:

定义一个函数为 triplesum ,即三个元素相加求和。传过来的参数是传统正常的 a , b , c ,然后把它变成三位数: a×100+b×10+c ,返回一个三位数。调用这个函数,第二个函数的时候第一个要用的话,用到一个花样传参,用一个星号,后面跟的是一个列表,注意不是把列表当成一个一个元素来传递的。如果把列表当成一个元素,它那就只能传给a了,是把列表里面的元素每一个元素当成参数传递,等于创造三个参数,它的值是1,2,3,传出来a,b,c。它的结果返回显示123,就和正常的这个传参都是一样的理解,就是传一个1,传一个2,传一个3。要理解花样传参的一个概念:一个星号代表了后面的这个内容里面的每一个元素作为参数。

image.gif

 

二、带默认值的参数

1、正常的函数定义是一个 fname ,然后括号里面给具体的参数的名字,(注意:这行代码不能执行,因为下面没有完成,就是示意一下。)然后这个参数的话还可以给它默认值,那就一个关键词等于一个默认值。

2、例子:定一个默认的三个数求和的这样一个函数,函数明,括号里面的话是参数等于一个默认值 a,b,c ,如果没有传具体数据的时候,它就用这个默认值。然后,如果说不知道后面还有多少个参数的话,那可以用一个星号加的这个 agrs ,那就代表可以很多个像这种参数,然后看返回值,返回是一个三位数。然后第二个函数进一个 ntuplesum _ default

元组求和的函数,然后括号里面的参数是两个星号加 args ,表示这里面的参数不知道有多少个,而且表示传过来的参数是 key 和 value 的方式,一个 key 等于一个 value ,可以有多个 key 等于 value 的这种方式组成的参数。这个也是一个求和,求和里面有的元素是×10以后加在一起的。

3、调用函数的例子:

调用 triplesum 函数

⑴传播参数是列表1、2、3、4,用星号表示是传的就是里面的每个元素作为参数,那就对应的就是a=1,b=2,c=3,

args =4当然这个函数里面并没有用到那个 abc 之外的。所以第一组的值执行一下,应该是123

⑵传一个花样传参,给一个列表,然后用星号表示它里面的每一个元素,执行观察:

第一个它的结果呢是123,是对的。第二个结果它报错了

内容显示类型错误,它需要的是在一个位置里面传的一个参数,但是我们给到4个值:1、2、3、5,并不是它需要的,所以这里就报错了。

image.gif注释一下,这个是有错的:

image.gif⑶第三个 print 也出错了,没有用星号,直接给了12345678。

但运行给的结果是1235678。

注释一下有错误:

image.gif⑷第四个 print 调用的和上面一个函数,传参数是一个列表1、3:

星号里面等于是取里面的每一个元素,那么 a 就是1, b 就是3, c 没有, c 默认是0,那么执行一下以后,运行的结果就是130。

上面两个 print 已经注释掉了。

⑸调用第一个函数,然后用两个星号来表示,两个星号表示它里面的这个内容是以 key 、 value 方式提供的,而且key它会对应着我们所需要的那个上面的 abc 的这样一个顺序。

image.gif比如说 a =1, b =2, c =3,那是字典的三个元素传过来,然后可以对应了这上面的 abc 的值,然后它的结果是123。

⑹最后一个调用也是第一个函数,两个星号表示它里面的取的是 key 、 value , a 是1, c 是3, b 没给的话,默认是0

结果是103

花样传参的例子总结:

image.gif如果要使用下面的函数,自行举例如何使用

image.gif

 

三、变量之变:深浅拷贝(不详细讲解)

1、注意在 python 中的变量,变量本身具有某些要素:

⑴变量身份(内存地址,用 id 函数查找地址)

就像人需要一个身份证号码一样的,唯一的身份证号码。变量的话,它的唯一的身份就是内存的地址,可以用 id 函数查找地址

⑵变量属性:表示变量类型

⑶变量里面的值:就是具体存放的数据

初学者往往对变量身份和值不清楚,所以拷贝的时候往往只拷贝到一部分,要么身份,要么值可通过网址视频深入学习要求自己举例,明白什么是深拷贝,什么是浅拷贝,通过代码的例子,自己练习。

 

四、异常处理: Try - Except - Else - Finally

1、对于刚学编程的同学,特别要注意在做项目的时候,很可能那一段代码就是因为条件不满足报错的,应该把这个报错放在异常处理里面去解决,这也是编程里非常好的一个习惯。

比如说可能要去读优盘,可能要从网上去抓数据。那代码的话不考虑这个网络的堵或卡或者终端问题或者这个磁盘优盘在不在,万一别人使用时,网络出问题了,那程序就崩溃掉,所以我们一定要学会异常处理。

2一些示例:

image.gif⑴基本用法: Try - except Exception

⑵笔下无错,心中有错

⑶异常处理:完全体

关于python的基础知识主要是给大家补充两个知识点:一个知识点就是python里面的列表、字典和元组的解析式、推导式,这是python非常特别的地方,大家一定要熟练使用这种解析式的方法。然后第二个内容给大家补充一下这个拉链函数以及花样传参。

但是这种花样传参在实际应用里面,在这个数据的一些处理理念中特别重要,所以给同学们补充到这样的知识。

相关文章
|
2月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
280 102
|
2月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
303 104
|
2月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
254 103
|
2月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
192 82
|
1月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
177 3
|
1月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
406 3
|
1月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
257 3
|
1月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
241 0
|
2月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的多面手
Python:现代编程的多面手
81 0
|
2月前
|
存储 人工智能 算法
Python实现简易成语接龙小游戏:从零开始的趣味编程实践
本项目将中国传统文化与编程思维相结合,通过Python实现成语接龙游戏,涵盖数据结构、算法设计与简单AI逻辑,帮助学习者在趣味实践中掌握编程技能。
318 0

推荐镜像

更多