目录
变量
变量的声明和赋值
变量的声明和赋值用于将一个变量绑定到一个对象上,格式如下: 变量名 = 表达式
最简单的表达式就是字面量。比如:a = 123 。
运行过程中,解释器先运行右边的表达式, 生成一个代表表达式运算结果的对象;然后,将这个对象地址赋值给左边的变量。
Note:变量在使用前必须先赋值,否则会报错
变量的回收机制
可以通过 del 语句删除不在使用的变量
删除变量示例:(如果对象没有变量引用,也会被垃圾回收器回收,清空内存空间。)
变量的赋值
1.链式赋值
链式赋值用于同一个对象赋值给多个变量。 x=y=123 相当于:x=123; y=123
2.系列解包赋值
系列数据赋值给对应相同个数的变量(个数必须保持一致) >>> a,b,c=4,5,6 相当于:a=4;b=5;c=6
常量
Python 不支持常量,但没有语法规则限制改变一个常量的值。只能在程序的逻辑上不对常量的值作出修改(实际是能够改动),常量的命名约定只能用全大写字母,多个单词使用下划线隔开
基本的数据类型
基本的运算符
1.算术运算符
2.赋值运算符
3.比较运算符
4.逻辑运算符
5.身份运算符
Note:
is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个,即比较对象的地址(id)
== 用于判断引用变量引用对象的值是否相等,即比较的是对象的值(value)
运算符优先级排序:
如下优先级从高到低排列。
实际使用中,记住如下简单的规则即可,复杂的表达式一定要使用小括号组织。 1. 乘除优先加减 2. 位运算和算术运算>比较运算符>赋值运算符>逻辑运算符
练习题:
#定义多点坐标_绘出折线_并计算起始点和终点距离
import turtle
import math
#定义四个点的坐标
x1,y1=100,100
x2,y2=100,-100
x3,y3=-100,-100
x4,y4=-100,100
#绘制折线
turtle.penup() #抬笔,箭头从原点出发
turtle.goto(x1,y1)
turtle.pendown() #从(x1,y1)坐标点开始下笔
turtle.goto(x2,y2)
turtle.goto(x3,y3)
turtle.goto(x4,y4)
#计算起始点(x1,y1)到终点(x4,y4)的距离
distance=math.sqrt((x1-x4)**2+(y1-y4)**2)
turtle.write(distance)
整数缓存问题
·总结:
1、is 比较两个对象的 id 值是否相等,是否指向同一个内存地址;
2、== 比较的是两个对象的内容是否相等,值是否相等;
3、小整数对象[-5,256]在全局解释器范围内被放入缓存供重复使用;
4、is 运算符比 == 效率高,在变量和 None 进行比较时,应该使用 is。