京公网安备 11010802034615号
经营许可证编号:京B2-20210330
CDA数据分析师 出品
作者:CDA明星讲师 曹鑫
编辑:Mika
大家好,今天我们来讲讲函数返回结果。但是我们拿来的这个函数还是稍显复杂的。
返回斐波那契数列的 n 项,我们定义 def fibo (n) ,fibo 是我自己取的一个名字,n 代表我要返回多少项,然后冒号是函数的开头结尾,然后下面要缩进。
开始写 a 等于 0,b等于1,i=0,result 等于一个空的列表,这都是我们提前的预知变量。
然后while i 小于 n,就是说如果我想要5个,我这个 i 如果小于5的话,我就执行下面的操作。
i是什么?i 开始是 0,也就是从第0的位置,一个值开始。
那 0 肯定是小于 5 的, 接着 result.append (a) 。a 是什么?a 是 0,它第一个位置就是 0 。
接下来这个特别重要,a,b=b, a+b, 也就是同时赋值。a 被赋值为b,b被赋值为 a+b 。
这里一定要记住了, a 这个时候是 0,但是 b 是 1,所以这个赋值的时候,a 就变成了 1 了,接下来 b 被赋值成 a+b。
注意这里的 a 依然是 0,1 是 1,因为负值是同时产生的,你不能把这里赋值完值的 a 再拿到这里来用。
这后面 b 就是 1,a 就是 0,b 就是 1,这时候 a 和 b 就分别又被赋值成了1和0+1 也是1,然后 i=i+1,去为了下一次循环做准备。
接下来第二个, i=i+1 之后,i 依然是小于 5 的,继续把 result.append 刚刚 a它已经被赋值为 1 了,1 进去之后再继续求 a,b 分别是 b 和 a+b 的赋值,也就是这么一个循环,不断的去进行,直到 i 不小于你给出的 n ,就得到了一个结果。
就把这个结果给 return出来,return 就是返回结果的方式,我们运行一下,然后把 fibo改成 10,我们就得到了 0、1、1这样一个10位的斐波那契数列。
为什么这里可以自动打印出来?
首先 return 了,就是把这个值返回过来了,同时在 jupyter notebook 里面默认最后一行是打印的,所以这里有个 print操作,就可以把这个结果显示出来。
这里最重要的要理解的就是这个 a,b它在做同时赋值的时候一定是用原始的值来求的。
如果你把它分开,分成 a=b ,然后再用b=a+b 的话,这个时候它就有一个先后运算的关系了,而在这里它是同时运行的,这里需要大家好好理解。
接下来我们来讲讲遍历的操作。
我这里有一个 n ,那遍历三次的话就是 for i in range (n) ,然后 print (i)。我们就会得到0、1、2 那个结果。为什么呢?
因为 range (n) 它其实意思就是 range (0) 到你的 n,这里是 3,就是 0 到 3 这样一个范围,这是我们最常用的遍历的方式。
当大家不知道这个 range 是什么的时候,可以用 range (n) 把它打印出来看一下,它会返回什么结果。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在使用Excel透视表进行数据汇总分析时,我们常遇到“需通过两个字段相乘得到关键指标”的场景——比如“单价×数量=金额”“销量 ...
2025-11-14在测试环境搭建、数据验证等场景中,经常需要将UAT(用户验收测试)环境的表数据同步到SIT(系统集成测试)环境,且两者表结构完 ...
2025-11-14在数据驱动的企业中,常有这样的困境:分析师提交的“万字数据报告”被束之高阁,而一张简洁的“复购率趋势图+核心策略标注”却 ...
2025-11-14在实证研究中,层次回归分析是探究“不同变量组对因变量的增量解释力”的核心方法——通过分步骤引入自变量(如先引入人口统计学 ...
2025-11-13在实时数据分析、实时业务监控等场景中,“数据新鲜度”直接决定业务价值——当电商平台需要实时统计秒杀订单量、金融系统需要实 ...
2025-11-13在数据量爆炸式增长的今天,企业对数据分析的需求已从“有没有”升级为“好不好”——不少团队陷入“数据堆砌却无洞察”“分析结 ...
2025-11-13在主成分分析(PCA)、因子分析等降维方法中,“成分得分系数矩阵” 与 “载荷矩阵” 是两个高频出现但极易混淆的核心矩阵 —— ...
2025-11-12大数据早已不是单纯的技术概念,而是渗透各行业的核心生产力。但同样是拥抱大数据,零售企业的推荐系统、制造企业的设备维护、金 ...
2025-11-12在数据驱动的时代,“数据分析” 已成为企业决策的核心支撑,但很多人对其认知仍停留在 “用 Excel 做报表”“写 SQL 查数据” ...
2025-11-12金融统计不是单纯的 “数据计算”,而是贯穿金融业务全流程的 “风险量化工具”—— 从信贷审批中的客户风险评估,到投资组合的 ...
2025-11-11这个问题很有实战价值,mtcars 数据集是多元线性回归的经典案例,通过它能清晰展现 “多变量影响分析” 的核心逻辑。核心结论是 ...
2025-11-11在数据驱动成为企业核心竞争力的今天,“不知道要什么数据”“分析结果用不上” 是企业的普遍困境 —— 业务部门说 “要提升销量 ...
2025-11-11在大模型(如 Transformer、CNN、多层感知机)的结构设计中,“每层神经元个数” 是决定模型性能与效率的关键参数 —— 个数过少 ...
2025-11-10形成购买决策的四个核心推动力的是:内在需求驱动、产品价值感知、社会环境影响、场景便捷性—— 它们从 “为什么买”“值得买吗 ...
2025-11-10在数字经济时代,“数字化转型” 已从企业的 “可选动作” 变为 “生存必需”。然而,多数企业的转型仍停留在 “上线系统、收集 ...
2025-11-10在数据分析与建模中,“显性特征”(如用户年龄、订单金额、商品类别)是直接可获取的基础数据,但真正驱动业务突破的往往是 “ ...
2025-11-07在大模型(LLM)商业化落地过程中,“结果稳定性” 是比 “单次输出质量” 更关键的指标 —— 对客服对话而言,相同问题需给出一 ...
2025-11-07在数据驱动与合规监管双重压力下,企业数据安全已从 “技术防护” 升级为 “战略刚需”—— 既要应对《个人信息保护法》《数据安 ...
2025-11-07在机器学习领域,“分类模型” 是解决 “类别预测” 问题的核心工具 —— 从 “垃圾邮件识别(是 / 否)” 到 “疾病诊断(良性 ...
2025-11-06在数据分析中,面对 “性别与购物偏好”“年龄段与消费频次”“职业与 APP 使用习惯” 这类成对的分类变量,我们常常需要回答: ...
2025-11-06