017浮点数-自动转换-强制转换-增强赋值运算符 浮点数 称为float 用a*b^10形式表示的科学计数法,比如:3.14,314E-2或者314e-2 这些数字在内存当中也是按照科学计数法存储、

>>>float(3)3
>>>float(3)
3
>>>314E-23.14>>>float(“3.14”)3.14
>>>314E-2

3.14
>>>float(“3.14”)
3.14
>>>int(3.84)3>>>round(3.54)4>>>round(3.14)3
>>>int(3.84)
3
>>>round(3.54)
4
>>>round(3.14)
3


round(value)可以返回四舍五入的值 注意:但是不会改变原来的值,而是产生新的值。 增强型赋值运算符 运算符+,-,*,/,//,**和%和赋值符=结合可以构成增强型赋值与少奶奶福 a=a+1等价于a+=1

尚学堂高淇java资料下载_逻辑运算符


+和=之间不需要加空格 018时间表示-unix时间点-毫秒-微秒-time模块

时间的表示     计算机的时间表示是从1970年1月1日 00:00:00开始,以毫秒(1/1000秒)进行计算,我们也把1970年这个时刻成为unix时间点

尚学堂高淇java资料下载_运算符_02


python当中可以通过time.time()获得当前的时刻,返回的值是以秒为单位的,带有微妙(1/1000)毫秒的精度的浮点值,例如:1530167364.8566 布尔值 True,False

>>>import time>>>time.time()>>>b=int(time.time())>>>totalMinutes=b//60>>>totalMinutes>>>totalHours=totalMinutes//60>>>totalHours425046>>>totalDays17710>>>totalYears=totalays//365>>>totalYears>>>48
>>>import time
>>>time.time()
>>>b=int(time.time())

>>>totalMinutes=b//60
>>>totalMinutes
>>>totalHours=totalMinutes//60
>>>totalHours
425046

>>>totalDays

17710
>>>totalYears=totalays//365
>>>totalYears
>>>48


019多点坐标-绘制折线图-计算两点之间的距离

【操作】-定义多点坐标-绘制出折现,并计算起始点和终点的距离

import turtleimport math#定义多个点的坐标x1,y1=100,199x2,y2=100,-100x3,y3=-100,-100x4,y4=-100,100#绘制折现turtle.penup()turtle.goto(x1,y1)turtle.pendown()turtle.goto(x2,y2)turtle.goto(x3,y3)turtle.goto(x4,y4)#计算起始点和重点的距离distance=math.sqrt((x1-x4)**2+(y1-y4)**2)turtle.write(distance)
import turtle

import math
#定义多个点的坐标x1,y1=100,199
x2,y2=100,-100
x3,y3=-100,-100
x4,y4=-100,100
#绘制折现
turtle.penup()
turtle.goto(x1,y1)
turtle.pendown()
turtle.goto(x2,y2)
turtle.goto(x3,y3)
turtle.goto(x4,y4)
#计算起始点和重点的距离

distance=math.sqrt((x1-x4)**2+(y1-y4)**2)
turtle.write(distance)


运行结果: 020.布尔值-比较运算符-逻辑运算符-短路问题

布尔值: Python2当中没有布尔值,直接用数字0表示False用数字1表示True Python3当中:TRUE还有False

>>>a=True>>>b=3>>>a+b4
>>>a=True

>>>b=3
>>>a+b
4


比较运算符

尚学堂高淇java资料下载_vb.net 同时给多个属性赋值_03


逻辑运算符

尚学堂高淇java资料下载_vb.net 同时给多个属性赋值_04


x and y >>>a=True >>>b=False >>>a or 30 True >>>b or 30 30 >>>a or 30/0 True x or y 如果说x为true则不再计算y了,直接返回True

尚学堂高淇java资料下载_vb.net 同时给多个属性赋值_05

021同一运算符-整数缓存问题

同一运算符用于比较两个对象的存储单元,实际上比较的是对象的值 is is是判断两个标识符是不是引用同一个对象 is not is not是判断两个标识符是不是引用不同的对象 is和===的区别: is用于判断两个变量的引用的对象是否是同一个,即比较对象的地址 == 用于判断引用变量引用对象的值是否是相等的,默认调用的对象是_eq_()方法

>>>a=1000>>>b=1000>>>a==bTrue>>> a is bFalse>>id(a)46764560>>id(b)46766216
>>>a=1000
>>>b=1000
>>>a==b
True
>>> a is b
False
>>id(a)
46764560
>>id(b)
46766216


整数缓存的问题      Python仅仅对比较小的整数对象进行缓存(范围是[-5,256])缓存起来,而并非是所有的整数对象,需要注意的是,这仅仅是在命令行中执行,而在Pycharm或者保存为文件执行,结果是不一样的,这是因为解释器做了一部分的游侠(范围是[-5,任意正整数])

>>>c=10>>>d=10>>>c is dTrue>>>id(c)138831648>>>id(d)138831648
>>>c=10
>>>d=10
>>>c is d
True
>>>id(c)
138831648
>>>id(d)
138831648



尚学堂高淇java资料下载_vb.net 同时给多个属性赋值_06


总结:

  1. IS比较两个对象的id的值是否相等,是否指向同一个内存地址
  2. ==比较的是两个对象的内容是否相等,值是否相等
  3. 小整数对象[-5,256]在全局解释器范围内被放入缓存供重复使用
  4. IS运算符比==效率高,在变量和None进行比较的时候,应该使用is