查看原文
其他

Python从零开始系列连载(5)——Python的基本运算和表达式(上)

2017-09-28 王大伟 Python爱好者社区

(点击上方图片或点击阅读原文报名)


前言


前文传送门:

Python从零开始系列连载(1)——安装环境

Python从零开始系列连载(2)——jupyter的常用操作

Python从零开始系列连载(3)——Python的基本数据类型(上)

Python从零开始系列连载(4)——Python的基本数据类型(下)


变量

变量是什么意思?还记得之前讲过的装菜的盘子和碗么?不记得就回去看看咯

如果你学过其他语言,使用变量先要定义,或者在定义的同时赋值

而派森的变量不需要单独定义,你直接在赋值的过程中完成了定义



当我们直接运行一个没有赋值过的变量,就报错了

之后我们对变量赋值操作,这时变量就被定义了

之后我们可以查看变量


如果我们对已赋值的变量再次赋值


可以发现变量的值改变了,使用了最后一次赋值的值,也就是上一次的值被覆盖了


当我们不需要某个变量时候,我们可以'过河拆桥'删掉它,使用del 变量名  来删除



所以再次查看变量student时候,系统报错了,因为已经删除掉了,tan90°(不存在)了


每一个变量都占据着一定的内存空间,当变量被删除了之后,这段内存空间就被释放了


小明:老湿!定义了太多变量,我的内存不够了岂不是要爆炸!


小明同学的问题很好,不过大家不要慌,Python有自动辣鸡(垃圾)回收机制,会自动释放不再使用的内存空间啦


转换变量类型

有时候,我们的变量要进行运算,例如字符串类型的 '233'

我想让它和整型的 233 相加

我们试试




发现系统报错了,看内容是说‘必须是字符串,不能是整型’


大家还记得我们之前讲过的字符串连接操作么(不记得了酷爱回去看哦)


因为这里我们运算中先写的字符串,所以系统默认是做的字符串连接操作,而系统之后发现后面的不是个字符串


他就炸了,说:说好的字符串连接呢?干嘛给个整型



为了验证这点,我们换位思考一下



这时候说int和str不能做运算


那怎么办呢,我就想运算



类型转换闪亮登场!!!!dangdangdangdang


float()函数,将其他类型数据转为浮点数

str()函数,将其他类型数据转为字符串

int()函数,将其他类型数据转为整型



划重点:这里的2.33e-4指的是2.33 x e^-4


小明:




于是小明想搞个大新闻,看看自己的幸运数字



抱歉,这并不支持



划重点:int()强制转换类型时候是扔掉小数点之后的数字,而不是四舍五入


小明:我不服!


不服试试



小明:



算术运算


算数运算符的优先级(按照从低到高排序,同一行优先级相同)

1. +、-

2. * , / , // , %

3. 单目+、单目-

4.**


我们来看几个栗子:



之前的运算都是整型数据运算,如果是不同类型的数据运算,会发生隐式类型转换。

转换的规则是:低等类型向高等类型转换

前提是可以进行算术运算

等级从低到高是:bool<int<float<complex



划重点:在算术运算时,True代表1,False代表0


常用的Python的运算内置函数:

内置(意思就是安装好就有,直接能用)

举个栗子,还记得以前手机么,买来很多内置游戏和扣费软件,真是让人深恶痛绝



上表中的long,大家不用理会


我们分别看一下:


小明:老师!你的数字近似只会四舍五入么?这个操作过时了!


小明啊,莫激动,虽然内置的没有,我们可以导入一些第三方的模块嘛!就像你新买的手机里没有王者荣耀,你就去应用商店下载个不就能玩了么!


初步接触导入模块


导入模块的操作是

import 模块的名称



我们导入了math这个模块,这个模块是做一些数学运算的


ceil(x)方法是返回大于等于x的最小整数

floor(x)方法是返回小于等于x的最大整数



常用的还有几个:

sqrt(x)返回平方根

exp(x)返回以e为底的指数

log(x)对数操作



还有常用的数学常量

π 和 e



划重点:我们这里使用了import math,则用到这个math模块里的 方法(可以理解为函数)和常量 要加上模块的名称,即:math.e 这样


如果你要长时间多次使用某个模块的内容

可以使用:



则直接可以使用模块里的方法和常量


今天作业:按照我的操作走一遍(敢不敢换个其他的说法)


下课


人生苦短,我选Python

未完待续,连载中......


福利:文末扫码立刻关注公众号,“Python爱好者社区”,开始学习Python课程:

关注后在公众号内回复“课程”即可获取:

1.崔老师爬虫实战案例免费学习视频。

2.丘老师数据科学入门指导免费学习视频。

3.陈老师数据分析报告制作免费学习视频。

4.玩转大数据分析!Spark2.X+Python 精华实战课程免费学习视频。

5.丘老师Python网络爬虫实战免费学习视频。




Python爱好者社区


为大家提供与Python相关的最新技术和资讯。

长按指纹 > 识别图中二维码 > 添加关注


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存