while 循环
while 条件表达式:
代码指令
语法特点
1、有初始值
2、条件表达式
3、变量的自增或自减,否则会造成死循环
使用条件:循环次数不确定,依靠条件来结束
目的:为了将相似或者相同的代码操作更加简洁,使我们的代码可以重复利用。
while 循环
while 条件表达式:
代码指令
语法特点
1、有初始值
2、条件表达式
3、变量的自增或自减,否则会造成死循环
使用条件:循环次数不确定,依靠条件来结束
目的:为了将相似或者相同的代码操作更加简洁,使我们的代码可以重复利用。
多分支语句
1、个条件语句之间是互斥的,只要满足一个条件语句就会执行其所属的语句,然后退出。
2、至少有两种条件可以选择;
3、elif后必须跟上条件和语句
4、else是选配,根据实际的情况来填写;
嵌套:
if 条件1:
if 条件2:
print('满足条件1,同时满足条件2')
else:
print('满足条件1,但不满足条件2')
elif条件3:
if 条件4:
print('满足条件3,同时满足条2')
外层的if判断,也可以是if-else
内层的if判断,也可以是if-else
根据实际开发情况进行
元组tuple:()
列表list:[]
字典dict:{}
变量的命名规则:
1、必须以字母(a-z, A-Z)或者下划线(_)开头;
2、其他字符可以是字母、数字或_
3、变量区分大小写
4、python关键字不能用作变量名
命名规范:
1、见名知意,尽量使用有语义的单词命名。如使用password用作密码……
2、小驼峰命名法:第一个单词的首字段用小写,后面的字段用大写
3、大驼峰命名法
4、下划线提前
流程:计算机执行代码的顺序;
流程控制:管理计算机代码执行的顺序,只有流程控制才能实现在开发当红的业务逻辑
流程控制的分类:
1、顺序流程:就是代码的一种自上而下的执行结构,也是Python默认的流程
2、选择流程(分支):根据某一步的判断,有选择的执行响应的逻辑的一种结构;
A、 单分支
if 条件表达式:
一条条的python代码
…………
B、双分支
if 条件表达式:
一条条的python代码
…………
else:
一条条的python代码
…………
C、多分支
if 条件表达式:
一条条的python代码
…………
elif条件表达式:
一条条的python代码
…………
elif条件表达式:
一条条的python代码
…………
else:
一条条的python代码
…………
条件表达式:比较运算符、逻辑运算符、符合运算符
3、循环流程:在满足一定的条件下,一直重复的执行某段代码的逻辑
1、while 条件表达式:
一条条的python代码
…………
2、for...in 可迭代集合对象
变量命名规范:不能以数字开头,大驼峰或者小驼峰命名
input()输入的数据是str型
Python的输入与输出
字符串可视化:试用%作为占位符,%后面跟的是变量的类型
s是字符串类型
d是数字类型
换行试用\n
格式化输出的其他方式 .format()
{}.format(变量)
输入函数:input()
输出:print()
赋值运算符:
= 赋值运算符 将=右边的值赋值给左边的变量
+= 加法赋值运算符 c+=a等效于c=c+a
-= 减法赋值运算符 c-=a等效于c=c-a
*= 乘法赋值运算符 c*=a等效于c=c * a
/=除法赋值运算符 c/=a等效于c=c/a
%=取模赋值运算符 c%=a等效于c=c%a
**= 幂赋值运算符 c**=a等效于c=c**a
//=取整赋值运算符 c//=a等效于 c=c//a
逻辑运算符(也称为短路运算):
and\or\not
and: 且,两旁的关联项同时为真时,整个运算式为真
or: 或,两边的关联项有一项为真时,算式为真;
not:结果对其后的关联项取反,真假切换,
优先级:括号()-> not -> and -> or
算术运算符
+, -,*,**(指数),%(取余),/除法,//(地板除)
比较运算符
== 等于
!= 不等于
>
<
>=
<=
什么是变量?
变量就是一个盒子,可以装任何东西,当里面装了苹果,就可以当苹果箱来用;装了苹果,箱子和其他的东西结合的时候,它就属于苹果;否则就属于另外的功能,比如香蕉
在python中,变量的概念和初中代数的方程变量是一致的。
y=x*3 x是变量
在计算机中,在写程序的时候,变量不仅可以是数字,也可以是其他类型;
食材+菜谱->厨师-- >美味佳肴
变量+逻辑->python解释器-->软件的功能
其实变量就相当于原材料(在计算机当中,就是数据)
变量=存储的数据
变量是一段有名字的连续存储的空间,我们可以通过定义变量来申请并命名这样的存储空间,并通过变量的名字来使用这段存储空间。
变量是程序中临时存放数据的场所
2、变量如何来定义和使用
定义(规则 变量名=数据)
a=10(根据肤质类型,开辟相应的空间)
a是变量的名字,对应的一个盒子,里面装的数据就是10
先定义变量,才能使用变量
变量是可以多次赋值的,在程序执行过程中,值可以改变的量
变量就是用来存储数据的
赋值时不需要指定数据类型,给这个变量赋值什么数据类型,这个变量就是什么类型。
数据类型:数字(num)、字符串(str)、字典(dic)t、元组(Tuple)、列表list)
数字(num):int(有符号整数),long(长整数);float(浮点型),complex(复数),布尔值(bool):Ture, False;
字典、元组、列表属于高级数据类型,也是数据结构
可以用type关键字查看变量的数据类型
print(type(变量))
Pycharm: 适用于专业开发人员的Python IDE, 提高代码质量,编写整洁和可维护的代码,而IDE可以帮助通过PEP8检查,测试帮助,智能重构和一系列检查来保持质量。Pycharm是程序员为程序员设计的。
1、智能Python辅助;
2、Web开发框架;
3、科学计算的工具;
4、跨技术开发;
5、远程开发能力;
6、内建开发者工具;
左侧:资源结构区
右侧:代码编写区
上方:菜单功能区
下方:结果展示
pycharm的优点
节省时间和精力,目的就是让开发者更加的快捷方便,通过提供的工具和各种性能来帮助开发者组织资源,减少失误;
建立开发标准,
什么是注释?
注释是编写程序时,写程序的人给一个语句、程序段、函数等的解释或提示。
注释的作用:
1、提高代码的可读性;提高开发效率,尤其对大型项目或者团队项目有重要的意义。
2、还可以进行代码的调试,ji一部分代码注释掉,对问题进行排查,进行完善
注释可以起到一个说明的作用,这个方法函数、变量到底是干嘛用的,如果没有注释,时间长了即使是自己可能都不知道这代码到底是干嘛用的。所以注释起到的作用就是方便自己查看写过的代码,别人来接收你的代码能看懂。简单来说就是能提高程序代码的可读性,以便于以后的参考、修改。
Python中单行注释用#号,#号邮编就是注释的内容,Python解析器遇到#号就会当做注释,不回去解析#号后面的内容
单行注释:用#号 注释可以用快捷键”command+/“,单行注释用一个井号就行。注释的内容不会被程序执行。
多行注释 在python中多行注释用'''或“”“,前后都要
特殊注释:
Python中有两句特殊的注释,在py文件首行#!/usr/bin/python3;
#--coding=utf-8--
这两句注释分别指的是指定python解析器的路径,指定python解析器的路径,指定编码格式,智能写在py文件最前面。
指定编码格式,一般用于python2版本,由于python2版本解析器默认Python采取ASCII编码,不支持中文。为了能在Python3版本的代码上写中文,如果需要兼容Python2版本,一般都加上指定编码格式这一行代码。
电信日志分析:
描述:
项目架构分析:
项目优化:HDFS+SPARK一站式分析平台
学习操作基本的dos或者Mac系统的命令
优点:
1、简单易学
解决业务问题,语法简单。
2、免费、开源
3、丰富的第三方库
4、可以移植
5、面向对象
缺点:
1、运行速度慢:
相较于C语言慢,C是编译型语言。
Python程序->解释器->CPU
4、全局解释器锁
Python是一种面向对象的解释型计算机程序语言,由吉多、范罗萨姆开发,第一个公开发行版本发布于1991年。被称为胶水语言,能够把其他语言制作的各种模块很轻松的联结在一起。
思维->python->机器语言(010101)->计算机执行
解释器做的事情就是翻译工作
机器学习模型=数据+算法
统计学习=模型+策略+算法
模型:规律 y=ax+b
损失函数=误差函数=目标函数
算法:如何高效找到最优参数
决策函数 或 条件概率分布
半监督学习:一部分有类别标签,一部分没有类别标签
主动学习:依赖于人工打标签
聚类的假设:将有标记的样本和无标记的样本混合在一起,通过特征间的相似性,将样本分成若干个组或若干个簇;使得组内的相似性较大,组间的相异性较大,将样本点都进行分组,;此时分组点的样本点即包含了有类别标签的也包含了没有类别标签的,根据有类别标签的样本,按照少数服从多数的原则对没有加标记的样本添加标记。至此,所有未标记的数据都可以加以分配标记。
半监督学习转化为监督学习。
强化学习:解决连续决策问题。
为其可以是一个强化学习问题,需要学习在各种局势下如何走出最好的招法
迁移学习:小数据集:两个相关领域(解决数据适应性问题)
个性化
深度+强化+迁移
监督学习:分类问题、回归
分类:决策树、KNN、贝叶斯、SVM、LR
回归:线性回归、多元回归LASSO回归、RIDGE回归、Elastic回归
无监督学习(非监督学习):
1、聚类(Kmeans)在没有类别标签的情况下,根据特征相似性或相异性进行分类;
2、特征降维(PCA. LDA):根据算法将高维特征降低到了低维
机器学习个概念的理解:
数据集:
定义数据集的名称
行:样本或实例
列:特征或属性,最后一列(类别标签列,结果列)
特征、属性空间:有特征维数所张成的空间
>>特征向量:组成特征火属性空间中的样本点
>>特征值或属性值:组成特征向量中的值