dynamo python修改多个参数_40岁小白学了30天python发现,编程真的其乐无穷

今天是十一哥学python的第30天。

时间过得挺快,感觉第一篇学习心得写了还没多久,这就已经不知不觉写30篇了。

从第1集开始,看视频教程、记笔记、截图、写代码,然后写文章、配图、发帖、回复网友留言,以及在学习交流群里跟朋友们一起扯淡,已成为每天生活的一部分。

现在,终于到了250集了。

这真是个里程碑的数字,真的好记,让我感到了生活对我深深的恶意。

1973c0a6e91f1428e0d4bede00e3aae6.png

一个月学下来,我有一个最大的体会就是,好像python这东东,也没有想象的那么难嘛。

当然,有朋友也跟我说过,我现在看的都是皮毛而已,后面的沟沟坎坎还多了去了。

8faacf088aad198b3f6cd1b5c7412c5c.png

不过对我来说,python的学习之旅是愉快的、乐在其中,而不是每天要咬紧牙关、需要打鸡血、靠意志力来学习,这就挺好的。

希望可以一直保持这种良好心态。

学习的过程中,我也不断在修正自己的学习方法。

比如,刚开始会跟自己死磕,碰到过不去的,死活要找到原因、非弄明白不可。

后来逐渐看开了。

很多时候,在当时看来百思不得其解的问题,也许没两天就讲到了,轻松加愉快的迎刃而解了。

嗯,看过我第7、8天学习经历的人,都明白我在说什么。

0bf0579445d6e0ace145d9e0cd74f14c.gif

最近的学习也是这样,之前的名片管理系统听的稀里糊涂,自己虽然又练了一遍,依然不是特别清楚。

昨天和今天学函数的内容,随着对局部变量、全局变量、返回值等概念的理解,一下子让我对名片管理系统的体会,提升了一大块。

86cb9f06695fa83d97d77676986b63e0.png

下面是今天的学习内容。

243集,函数参数和返回值的作用

在我们开发时,如果想把一段功能独立的代码进行封装,就可以定义一个函数。

在定义函数的时候,当函数内部需要处理外部的数据时,就可以把外部的数据,以参数的形式传递给函数,这就是参数的作用。

当函数的代码执行完成后,希望向外界汇报函数的执行结果时,就可以给函数增加一个返回值,这就是返回值的作用。

d8de5a27bbc1a067912f1e444c05865e.png

定义函数时,是否接收参数,或者是否返回结果,是根据 实际的功能需求 来决定的!

1、如果函数 内部处理的数据不确定,就可以将外界的数据以参数传递到函数内部。

2、如果希望一个函数 执行完成后,向外界汇报执行结果,就可以增加函数的返回值。

函数的返回值

244集,利用元组返回多个值

一个函数执行后返回多个结果可以利用元组。

元组可以包含多个数据,因此可以使用元组让函数一次返回多个值。

如果函数返回的类型是元组,小括号可以省略。

d4a25234e5aac28a8e09d0caca759d81.png

245集,接收返回元组函数的方式

接收返回元组,需要单独的处理处理元组中的值,可以使用元组索引,但这种方式比较不方便。

如果希望单独的处理元祖中的元素,可以使用多个变量,一次接收函数的返回结果,而不需要记住哪个索引对应哪个数据。

1237c45e6cd2763f7b67e8e5f2196560.png

注意:使用多个变量接收结果时,变量的个数应该和元祖中元素的个数保持一致。

246集,交换两个变量的值

一道经典的面试题:交换两个数字。

解法1:使用其他变量,这个很好理解,没啥可说的。

dacaad848b9584abd117c3550fd8ac81.png

解法2:不使用其他变量

这个办法略显牛逼,明显玩的是数学,感觉属于逻辑范畴吧。

9997aebc6d96135502d64fccff76e31f.png

解法3:Python专有解法

这是隆重推荐的办法。

一行代码搞定,这个真是太秀了、太简洁了,简直爱死Python了。

尤其一开始 a,b = (b,a) 就已经很毁我三观了,然后再把 小括号也去掉,彻底服气了,简直是无言以对。

02092d14e6527f302208e7f2bf7a3047.png

提示:等号右边是一个元组,只是把 小括号 省略了。

函数的参数

247集,在函数内部针对参数赋值不会影响外部实参

在函数内部,针对参数使用赋值语句,不会修改到外部的实参变量。

关于标题这句话,不知道可不可以这样理解:外部实参可以当做全局变量,而函数内部的形参实际上是局部变量。

659baa9bac6672c37a9bd8304f9dc551.png
06d6196023e096dc1091ae6866fef044.png

上面两个图,一个传递的参数是 不可变 的数字,以及 可变 的列表,均不会影响外部实参。

只要 针对参数 使用 赋值语句,会在 函数内部 修改 局部变量的引用,不会影响到 外部变量的引用。

248集,在函数内部使用方法修改可变参数会影响外部实参

如果传递的参数是 可变类型(列表、字典),在函数内部,使用 方法 修改了数据的内容,同样会影响到外部的数据。

实质上,使用 方法 的效果就是,列表的引用没有变,但是列表中的数据变化了。

488167fa973f5be6947e659abb6ab8ab.png

249集,列表使用+=本质上是调用extend方法

又一道面试题: += 。

针对数字和字符串,+= 就是先相加、再赋值。

但是,在 Python 中, 列表变量调用 += ,本质上是在执行列表变量的 extend 方法,可以把另外一个列表的内容整合到当前列表,不会修改变量的引用。

cb6c430f2d70ac54fa88567d80e0b63f.png

个人感觉,这个 += 挺鸡肋的,对于数字和字符串来说完全是多此一举,对于列表来说,又很容易和赋值语句混淆。

缺省参数

250集,回顾列表的排序方法明确缺省参数的概念及作用

定义函数时,可以给 某个函数 指定一个默认值,具有默认值的参数就叫做缺省参数。

调用函数时,如果没有传入 缺省参数 的值,则在函数内部使用定义函数时指定的 参数默认值。

列表如果不传递排序,默认按照升序排序。

如果需要降序排序,需要执行reverse参数。

而实际使用中,升序排序要更多的。

390358be323587e94d03d30d5ba89092.png

函数的缺省参数,将常见的值设置为参数的缺省值,从而 简化函数的调用。

上图的排序中,实际上reverse = False 为默认值,就是缺省参数。

251集,指定函数缺省参数的默认值

在参数后使用赋值语句,可以指定参数的缺省值。

也就是,在小括号内部,参数名后面,跟上一个等号,然后把默认值跟在等号后面即可。

2b9d051cfc85ef7e2207c46c8c90d2cc.png

提示:在指定缺省参数的默认值时,应该使用最常见的值作为默认值。如果一个参数的值 不能确定,则不应该设置默认值,具体的数值在调用函数时,由外界传递。

252集,缺省参数的注意事项

缺省参数的定义位置:必须保证 带有默认值的缺省参数 在参数列表末尾,而没有默认值的参数应该放在缺省参数的前面。

如下面的例子就是错误的:

def print_info(name,gender=True,title):

把title放到第二个位置就是正确的了。

调用带有多个缺省参数的函数:在 调用函数时,如果有 多个缺省参数,需要制定参数名,这样解释器才能够知道参数的对应关系。

c4d24397c36b4da4b8ced82f9766954c.gif

作者简介:冯十一,40岁仍然坚持学习的哏儿都老男人。多平台签约作者,日更写作践行者,每周阅读一本书。欢迎关注@天津冯十一

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513213.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

友盟+U-APM 移动应用性能体验报告:Android崩溃率达0.32%,OPPO 、华为、VIVO 崩溃表现良好

简介: 应用性能稳定是良好用户体验中非常关键的一环,而现实情况却是应用崩溃、卡顿、加载缓慢、页面白屏等问题,频频出现在用户的真实体验之中,成为影响业务表现的直接杀手。为此,应用性能管理(APM&#xf…

阿里云张毅萍:构建边缘云全站加速网络体系

简介: 2021年6月9日,亚太内容分发大会暨CDN峰会在北京举行,阿里云边缘云网络高级技术专家张毅萍受邀参会,分享了阿里云在构建边缘云全站加速网络体系的实践,基于边缘云节点支撑各种应用协议的分层传输加速,…

http中的请求头各部分都是什么意思_硬核!30 张图解 HTTP 常见的面试题

每日一句英语学习,每天进步一点点:前言在面试过程中,HTTP 被提问的概率还是比较高的。小林我搜集了 5 大类 HTTP 面试常问的题目,同时这 5 大类题跟 HTTP 的发展和演变关联性是比较大的,通过问答 图解的形式由浅入深的…

Hologres揭秘:高性能原生加速MaxCompute核心原理

简介: Hologres技术揭秘系列持续更新中,本期我们将带来Hologres高性能原生加速查询MaxCompute的技术原理解析。 Hologres(中文名交互式分析)是阿里云自研的一站式实时数仓,这个云原生系统融合了实时服务和分析大数据的…

mfc 消息消息队列概念_消息队列面试连环问

最近我一直扎在消息队列实现细节之中无法自拔,已经写了 3 篇Kafka源码分析,还剩很多没肝完。之前还存着RocketMQ源码分析还没整理。今儿暂时先跳出来盘一盘大方向上的消息队列有哪些核心注意点。核心点有很多,为了更贴合实际场景,…

如何用增长的思维做提效?

简介: 埋点作为记录用户行为的常规手段,伴随着前端技术的发展早已历经春秋,不过直到“增长黑客”系列理论出现,才真正让埋点分析变得内涵丰富且有章可循。 作者 | 金戟 来源 | 阿里技术公众号 埋点作为记录用户行为的常规手段&am…

ajax返回list前台遍历_List、set集合接口分析

一、List接口详解1、List接口有三个实现类,ArrayList、LinkedList、Vector2、三个实现类的异同点:(1)ArrayList: 作为list接口的主要实现类;线程不安全,效率高;底层使用Object[]存储&#xff08…

聚焦 | 数据湖分析如何面向对象存储OSS进行优化?

简介: 最佳实践,以DLA为例子。DLA致力于帮助客户构建低成本、简单易用、弹性的数据平台,比传统Hadoop至少节约50%的成本。其中DLA Meta支持云上15种数据数据源(OSS、HDFS、DB、DW)的统一视图,引入多租户、元…

如何把极坐标化为直角坐标_2019高考100题之063(极坐标)

分析&#xff1a;如果你对过原点的直线的参数方程(xtcosθ&#xff0c;ytsinθ(参数t∈R))理解透彻了&#xff0c;那么极坐标也就没有任何问题了&#xff0c;特别是对于ρ<0的理解&#xff0c;就和t<0类似.教材上说了不作特殊说明&#xff0c;ρ都是大于零的&#xff0c;…

c语言队列作用,队列(C语言)

一、定义一种可以实现“先进先出”的存储结构。二、分类1、链式队列&#xff1a;用链表实现。2、静态队列&#xff1a;用数组实现。静态队列通常都必须是循环队列。3、循环队列(1)循环队列需要几个参数来确定&#xff1f;需要2个参数来确定&#xff1a;front、rear(2)循环队列各…

2021银行共探转型新动能:大行酝酿质变 小行跨越数字鸿沟

2021年&#xff0c;我国“十四五”规划开篇启程&#xff0c;数字经济蓬勃发展&#xff0c;银行业紧跟国家发展大局&#xff0c;全力推进数字化转型向纵深发展&#xff0c;探寻行业新动能&#xff0c;积极参与全社会数字生态建设&#xff0c;为数字中国高质量发展贡献金融力量。…

如何构建一个拖垮整个公司的运维系统

简介&#xff1a; 人肉运维&#xff0c;不在 DevOps 中转型&#xff0c;就在自动化中消亡。云化时代的运维&#xff0c;需要的是高铁&#xff0c;而不是“跑的更快的马车”。6月25日&#xff0c;数智创新行上海站智能运维专场&#xff0c;期待您的参与。 原文链接 本文为阿里云…

idea 安装php插件_免费版的 IDEA 为啥不能使用 Tomcat ?

程序员的成长之路互联网/程序员/技术/资料共享 关注阅读本文大概需要 2 分钟。来自&#xff1a;https://urlify.cn/2Ifiiiidea有两大版本&#xff0c;一个是Ultimate版本&#xff0c;一个是Community版&#xff0c;ultimate是需要收费的&#xff0c;Community版是开源免费的。然…

RocketMQ 千锤百炼--哈啰在分布式消息治理和微服务治理中的实践

简介&#xff1a; 随着公司业务的不断发展&#xff0c;流量也在不断增长。我们发现生产中的一些重大事故&#xff0c;往往是被突发的流量冲跨的&#xff0c;对流量的治理和防护&#xff0c;保障系统高可用就尤为重要。 作者&#xff5c;梁勇 ​ 背景 ​ 哈啰已进化为包括两轮…

休闲食品行业如何数字化升级,腾讯云和卫龙辣条一起打了个样

11月26日&#xff0c;腾讯云与卫龙集团达成战略合作&#xff0c;双方将整合各自优势资源&#xff0c;助力卫龙集团建设专有云平台&#xff0c;围绕生产、运营、管理层面进行全链路数字化&#xff0c;加速卫龙集团转型升级&#xff0c;打造休闲食品行业标杆。 作为一家年销售超过…

Vite + React 组件开发实践

简介&#xff1a; 毫不夸张的说&#xff0c;Vite 给前端带来的绝对是一次革命性的变化。或者也可以说是 Vite 背后整合的 esbuild 、 Browser es modules、HMR、Pre-Bundling 等这些社区中关于 JS 编译发展的先进工具和思路&#xff0c;在 Vite 这样的整合推动下&#xff0c;给…

canvas全局合成画月牙_GIF动态图,视频?都能用Python转换成字符画图像

字符画是一种由字母、标点或其他字符组成的图画&#xff0c;它产生于互联网时代&#xff0c;在聊天软件中使用较多&#xff0c;本文我们看一下如何将自己喜欢的图片转成字符画。静态图片首先&#xff0c;我们来演示将静态图片转为字符画&#xff0c;功能实现主要用到的 Python …

开发者看过来,5 行代码实现身份认证,Authing 如何做到的?

在没有学编程前&#xff0c;可能我们不会想到看起来简单的注册登录功能&#xff0c;其实并不简单&#xff0c;背后可能需要考虑&#xff1a; 1、支持用户用手机验证码、邮箱验证码登录&#xff1b; 2、用户连续登录失败&#xff0c;为了防止暴力破解&#xff0c;需考虑 24 小…

用c语言绘制自定义图形,Android使用自定义View绘图

使用自定义 View 绘图实例 MyViewCanvasDemo 自定义一个名为 MyView 的 View 类&#xff0c;并在其 onDraw() 方法中绘制简单的图像&#xff0c;运行效果如图 1 所示。图 1 简单的 View 绘图实例 MyViewCanvasDemo 没有使用布局文件&#xff0c;而是将自定义的 MyView 对象显示…

如何构建企业出海的“免疫力“?深入解读阿里云CDN安全能力

简介&#xff1a; 随着信息技术快速发展与应用&#xff0c;产业数字化和智能化趋势正日益加深&#xff0c;企业信息安全与防护被提升到前所有未有的高度。阿里云CDN经过10多年的技术发展时间&#xff0c;已逐步构筑一个边缘云的安全网络立体防护体系&#xff0c;包含了全链路安…