Python变量,内存管理,操作符,数字类型

Posted 苏导

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python变量,内存管理,操作符,数字类型相关的知识,希望对你有一定的参考价值。

简述

语言中最为基础的部分,变量、操作符等。

基本规则与特殊字符

项目说明
#其后的字符为python注释
\\n标准的行分隔符(通常一个语句一行)
\\继续上一行
;将两个语句连接在一行中
:将代码块的头和体分开

变量与赋值

类别说明
变量名字母(大写、小写字母加下划线_)开头的标识符
—>变量名大小写敏感
—>变量类型不需要预先声明,赋值时即被初始化(动态类型语言)
支持增量赋值n *= 10–>n = n * 10
不支持自增1和自减1操作符
Python的赋值语句不会返回值
支持多重赋值x = y = z = 1(x,y,z的值都赋值为1)
支持‘多元’赋值x,y,z=1,2,'a string’分别将右边三个值赋给左边三个变量,类似元组初始化
‘多元’交换x,y=1,2 x,y=y,x会将x,y的值交换,即结果为x为2,y为1

内存管理

项目说明举例
动态类型对象的类型和内存占用都是运行时确定。变量赋值时,解释器根据右侧操作数决定新对象的类型。对象创建后,一个该对象的引用被赋值给左侧变量
内存分配无需开发手动进行,python自动进行
引用计数python内部记录所有使用中的对象各有多少引用,每个对象各有多少个引用即为引用计数。对象被创建时,一个引用计数就被创建,该对象不再需要时其引用计数即变为0,并被垃圾回收
垃圾回收垃圾收集器为一块独立代码,用来寻找引用计数为0的对象
如下是关于对象与引用关系的示意图:

标准算术操作符

如下操作符优先级从低到高排列:

操作符说明示例
+加法
-减法
*乘法
/传统除法,两个操作数为整型的话,执行的是地板除,即会取比商小的最大整数5 / 2的结果为2
//浮点除法,对结果进行四舍五入,不管操作数是什么类型,浮点除法总是执行真正的除法5 / 2的结果为3
%求余,注意在格式化打印中%作为字符串格式操作符5 % 2的结果为1
**乘方操作3 ** 2,3的2次方,结果为9
<<左移位操作1 << 1 (结果为2)
>>右移位操作2 >> 1 (结果为1)
&按位与0xFF & 0x14结果为0x14
^按位异或0xFF ^ 0x01结果为0xFE
|按位或0x0F | 0xF0结果为0xFF

标准比较操作符

操作符说明示例
<小于2 < 4,结果为真
<=小于等于
>大于5 > 4 > 3
>=大于等于
==等于
!=不等于
<>不等于此种方式已经逐渐被淘汰

逻辑操作符

操作符说明示例
and与,类似&2 < 4 and 2 == 4
or
not

基本数字类型

数字类型符号举例
有符号整型int-237, 0x80, -0X92
长整型long2998906245L, 0xDECADEDEADBEEFBADEEEDDEAL
布尔值boolTrue, False
浮点值3.14159, 4.2E-10, 6.022e23
复数6.23 + 1.5j, -1.23-875J

关键字

Python关键字可以用iskeyword()函数来识别是否为关键字:

关键字说明
and逻辑与
as**
assert**
break跳出循环控制
class
continue跳出循环控制
def函数定义
del直接释放资源
elif条件
else条件
except异常处理
exec**
finally异常处理
for循环
from**
global**
if条件
import导入模块
in迭代中用到
is**
lambda**
not逻辑非
or逻辑或
pass**
print打印log
raise异常处理
return返回值
try异常处理
while循环
with**
yield**
None非关键字常量

专用下划线标识符

标识符说明
__xxx不用‘from module import *’导入
_xxx_系统定义名字
__xxx类中的私有变量名

Python中的特别变量

标识符说明
_doc_通过该变量动态获得文档字串。模块、类声明、函数声明中第一个没有赋值的字符串可以用属性obj.__doc__来进行访问
待续待续

以上是关于Python变量,内存管理,操作符,数字类型的主要内容,如果未能解决你的问题,请参考以下文章

Python基本数据类型与操作

Class2.2 变量和简单数据类型

python 第一周(第一天) 我的python成长记 一个月搞定python数据挖掘!(01)

Python数据类型(数字)

Python变量和数据类型

python 内存管理