对象
python中,一切皆对象。每个对象由:标识(identity)、类型(type)、value(值)组成。
1、标识用于唯一标识对象,通常对应于对象在计算机中的位置。使用函数id(obj)可返回对象的obj的标识符
2、类型可以表示对象存储的"数据"的类型。类型可以限制对象的取值范围以及可执行的操作,可以使type(obj)获得对象的所属类型,
3、值表示对象所存储的数据的信息。可以使用print(obj)可以直接打印出值。
对象的本质就是:一个内存块,拥有特定的值,支持特定类型的相关操作。
引用
在python中,变量也成为:对象的引用。因为,变量存储的就是对象的地址。
变量通过地址引用了”对象"。
变量位于:栈内存
对象位于:堆内存
python是动态类型语言
变量不需要显式声明类型。根据变量引用的对象,python解释器自动确定数据类型
python是强类型语言
每个对象都有数据类型,只支持该类型支持的操作
标识符
基本用法
标识符:用于变量、函数、类、模块等的名称。标识符有如下特定规则
1、区分大小写,如sxt和SXT是不同的
2、第一个字符必须是字母、下划线,其后的字符是:数字、字母、下划线
3、不能使用关键字。比如if、or、while等。
4、以双下划线开头和结尾的名称通常有特殊含义,应尽量避免这种写法。_int_是类的构造函数
python标识符命名规则
类型
规则
例子
模块和包名
全小写字母,尽量简洁。若多个单词之间用下划线
math、os、sys
函数名
全小写字母,多个字母之间用下划线隔开
phone、my_name
类名
首字母大写,采用驼峰原则
多个单词时,每个单词第一个字母大写,其余部分小写
MyPhone、MyClass、Phone
常量名
全大写字母,多个单词之间用下划线隔开
SPEED、MAX_SPEED
变量的声明和赋值
变量在使用前必须初始化
删除变量:del a
如果对象没有变量引用,就会被垃圾回收器回收,清空内存空间。
链式赋值:
x=y=123相当于:x=123;y=123;
系列解包赋值
a,b,c=4,5,6相当于a=4;b=5;c=6
实现变量互换:a,b=b,a
常量
python不支持常量没有语法规则限制改变一个常量的值。
基本运算符
/ 浮点数除法
// 整数除法
% 模(取余)
** 幂
除数为零会报错
使用divmod()可以同时得到商和余数
整数
0O 八进制
0X 十六进制
0B 二进制
自动转型:整数和浮点数结果是浮点数
python中整数无限大,不会溢出
浮点数
float