京公网安备 11010802034615号
经营许可证编号:京B2-20210330
作者 | CDA数据分析师
循环语句
1、for循环
For循环用来遍历任何序列的项目,这个序列可以是一个列表也可以是一个字符串,针对这个序列中的每个项目去执行相应的操作。
举一个例子,一个数据分析师的必修课主要有Excel、SQL、Python和统计学,你要想成为一名数据分析师,那么这四门课是必须要学的呃,且学习顺序也应该是先Excel,再SQL,然后Python,最后是统计学。依次学习这四门课的过程就是在遍历一个for循环。
2、while循环
While循环用来循环执行某程序,即当条件满足时,一直执行某程序,直到条件不满足时,终止程序。
举一个例子,七周成为数据分析师,即只要你按课程表学习七周,你就算是一名数据分析师了,可以去找工作了。这里就是以你是否已经学习了七周作为判断条件,如果学习时间没有达到七周,那么你就需要一直学,直到学习时间大于七周,你才可以停止学习,去找工作了。用while语句执行时的具体流程如下图所示:
下面为其实现代码:
条件语句
1、if语句
if条件语句是程序先去判断某个条件是否满足,如果该条件满足,则执行判断语句后的程序。If条件后面的程序需要首行缩进。
举一个例子,如果你好好学习数据分析师的必备技能,那么你就可以找到一份数据分析相关的工作,但是如果你不好好学习,那么你很难找到一份数据分析相关的工作。
我们用1表示好好学习,0表示没有好好学习,并赋初值为1,也就是假设你好好学习了。
当判断条件为是否好好学习时,具体流程如下图所示:
下面为其实现代码:
当判断条件为是否没有好好学习时,具体流程如下图所示:
下面为其实现代码:
因为条件不满足,所以执行if条件后面的程序,即输出为空。
2、else语句
else语句是if语句的补充,if条件只说明了当条件满足时程序做什么,没有说当条件不满足时程序做什么。而else语句正好是用来说明当条件不满足时,程序做什么。
当判断条件为是否好好学习时,具体流程如下图所示:
下面为其实现代码:
当判断条件为是否没有好好学习时,下面为其代码实现:
3、elif语句
elif语句可以近似理解成else_if,前面提到的if语句、else语句都只能对一条语句进行判断,但是当你需要读多条语句进行判断时,就可以用elif语句判断。
elif中可以有else语句,也可以没有,但是必须有if语句,具体执行顺序是先判断if后面的条件是否满足,如果满足则运行if为真时的程序,结束循环;如果if条件不满足时就判断elif语句。可以有多个elif语句,但是只有0个或者1个elif语句会被执行。
比如你要猜某个人考试考了多少分,你该怎么猜?先判断这个人是否及格(60分为准),如果不及格,分数范围直接猜一个小于60分的即可,如果及格了再去判断他的分数到底在哪个分数段,具体流程如下图所示:
代码实现如下图所示:
函数
函数是再一个程序中可以被重复使用的一段程序。这段程序是由一块语句和一个名称组成的,只要函数定义好以后,你就可以在程序中通过该名字调用执行这段程序。
1、普通函数
普通函数一般由函数名(必需)、参数、语句块(必需)、return、变量这几部分组成。
函数定义语法如下图所示:
定义函数使用的关键词是def,函数名后面的括号里面放参数(参数可以为空),参数后面要以冒号结尾,语句块要缩进四个空格,语句块是函数具体要做的事情。
定义一个名为learn_python的函数:
上面的函数利用函数名learn_python调用了多次learn_python对应的语句块。
函数的参数有形参(形式参数)和实参(实际参数)两种,在定义函数的时候使用的参数是形参,比如上面的location;在调用函数时传递的参数是实参,比如上面的地铁。
上面语句块中直接执行了print操作,没有返回值,我们也可以利用return对语句块的运行结果进行返回。
定义一个含有return的函数:
这次调用函数以后,没有直接进行print操作,而是将运行结果利用return进行了返回。
定义一个含有多个参数的函数:
2、匿名函数
匿名函数,顾名思义就是没有名字的函数,也就是省略了def定义函数的过程。Lambda只是一个表达式,没有函数体,lambda使用方法如下:
arg1,arg2,arg3表示具体的参数,expresion表示参数要执行的操作。
现在我们分别利用普通函数和匿名函数两种方式来建立一个两数相加的函数,让大家看看两者的不同。
普通函数如下:
匿名函数如下:
匿名函数比普通函数简洁的多,也是比较常用的,大家务必熟练的掌握。
高级特性
1、列表生成式
现在有一个列表,你需要对该列表中的每一个,你需要对该列表中的每个值求平方,然后将结果组成一个新列表,我们先看看普通方法怎么实现的。
普通方法实现如下:
列表生成式实现如下:
上面的需求比较简单,你可能没有领略到列表生成式的妙用。我们再来看一些复杂的需求。
现在有两个列表,需要把这两个列表中的值两两组合,我们分别用普通方法和列表生成式实现一下。
普通方法实现如下;
列表生成式实现如下:
上面的需求用普通的方法要嵌套两个for循环,但是用列表生成式只要一行代码即可。如果数据量很小,那么for循环嵌套运行速度还行;如果数据量很大的话,那么for循环嵌套太多的程序,运行就会变的很慢。
2、map函数
map函数的表现形式是map(function,agrs),表示对序列args中的每个值进行function操作,最终得到一个结果列。
map函数生成的结果序列不会直接把全部结果显示出来,要想获取到结果需要for循环遍历取出来。也可以使用list方法,将结果值生成一个列表。
模块
模块是升级版的函数,我们前面说过,在一段程序中可以通过函数名多次调用函数,但是必须在定义函数的这段程序里面调用,如果换到其他程序里该函数就不起作用了。
模块之所以是升级版的函数,是因为在任意程序中都可以通过模块名去调用该模块对应的程序。
你要调用函数首先需要定义一个函数,同理,你要调用模块,首先需要导入模块,导入模块的方法主要有两种。
数据分析领域用的比较多的三个模块分别是Numpy、Pandas、matplotlib,Python中还有很多类似的模块,正是因为这类模块的存在,使得Python变的很简单,受到越来越多人的欢迎。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在大数据时代背景下,海量行业数据亟需通过专业化工具挖掘潜在价值,辅助企业业务决策、优化运营模式、规避经营风险。Python凭借 ...
2026-08-28SQL是数据分析领域最基础、最核心的工具,承担着取数、清洗、统计、分层、归因的全流程工作。不同于单纯的语法练习,实战化SQL数 ...
2026-08-28 很多企业团队并非缺乏指标,而是陷入“指标失控”:仪表盘上堆满实时跳动的数据,却无法回答“当前瓶颈在哪、下一步该做什么 ...
2026-08-28随着新零售模式的快速普及,零售行业从传统的“货品驱动”全面转向“用户驱动”。门店交易数据、线上消费记录、浏览轨迹、复购频 ...
2026-08-27在数据分析、爬虫采集、接口开发、数据归档等场景中,JSON与CSV是两种使用率最高的数据存储格式。JSON为键值对结构化格式,适配 ...
2026-08-27 很多数据分析师每天都在计算指标、制作报表,但当被问到“什么叫指标数据元”“指标数据标准包含哪些核心维度”“指标数据质 ...
2026-08-27在数据分析工作中,时间序列是最常见的数据类型之一,订单时间、日志时间、交易时段、统计周期等数据均离不开时间处理。原始数据 ...
2026-08-26在数据分析与数据预处理工作中,原始数据普遍存在录入错误、系统故障、偶然极值等问题,极易产生异常数据。异常数据会严重干扰数 ...
2026-08-26 很多数据分析师能熟练写SQL、做透视表,但当被问到“数据是从哪里来的?经过哪些加工才进入数据仓库?ETL具体做了什么?”时 ...
2026-08-26在数理统计与数据分析领域,多因素方差分析与线性回归模型是研究变量关系、因素影响、数据差异规律的两大核心工具。二者均属于经 ...
2026-08-25数据分析的核心价值不在于数据计算与图表制作,而在于清晰、精准、有逻辑地输出结论、支撑业务决策。日常数据分析报告普遍存在结 ...
2026-08-25 很多数据分析师能熟练地写SQL、做透视表、算描述性统计,但当被问到“如何预测用户流失概率”“如何归因销量下滑的关键因素 ...
2026-08-25平均数是数据分析、数理统计与日常运算中最基础、最常用的统计量,核心作用是浓缩一组数据的整体水平、刻画数据集中趋势。在众多 ...
2026-08-24在MySQL数据库中,InnoDB存储引擎作为主流事务型引擎,默认事务隔离级别为可重复读(Repeatable Read,RR),这与SQL Server、Or ...
2026-08-24 很多数据分析师拿到数据就开始清洗、建模,但当被问到“这批数据属于什么类型——结构化还是非结构化?分类变量还是数值变量 ...
2026-08-24 很多数据分析师画过趋势图、做过业绩预测,但当被问到“这个月销售额增长20%,到底是长期趋势自然增长,还是促销活动的短期 ...
2026-08-21在数据分析与数据可视化工作中,直方图是展示数据分布特征、离散程度、集中区间的核心图表,能够直观呈现数值数据的频次分布规律 ...
2026-08-20在数据分析领域有一句核心准则:垃圾数据进,垃圾数据出。数据清洗是数据分析、数据建模、数据可视化之前的必经前置工序,也是保 ...
2026-08-20 很多数据分析师做过按月份的销售额趋势图,画过按天的流量折线图,但当被问到“时间序列和普通数据有什么本质区别”“季节性 ...
2026-08-20在Python数据分析与数据清洗工作中,Pandas是最核心的数据处理库,DataFrame是结构化数据的标准存储格式。在实时数据采集、循环 ...
2026-08-19