python强势来袭-0010-变量&运算符

释放双眼,带上耳机,听听看~!

上一章讲解过了组合数据类型,本章进行变量以及各种编程需要的运算符的操作讲解

3.3 变量部分
3.4 运算符部分;主要讲解:赋值运算符、算数运算符、关系运算符、逻辑运算符、成员运算符、标识运算符

3.3. 变量

变量就是用来临时存放数据的一个容器

3.3.1 变量的使用

python中的变量,不需要声明即可使用
python中的变量命名:驼峰命名法,见名知意,只能是字母、数字和下划线组成,变量第一个字符智能是字母或者下划线

stockCount = 12; # 意义:库存数量 12
price = 499.00; # 意义:单价为499.00
_pi = 3.1415; # 意义:定义了圆周率pi为3.1415
$name = 'jerry' # 错误:变量中不能包含$符号
3.3.2 变量的回收

变量一旦定义,在程序中也是使用内存空间来存储数据的,所以当变量一旦不在需要使用,需要删除变量释放它占用的内存空间,python中通过del关键字来删除变量

stockCount = 12; # 使用库存变量
del stockCount; # 删除变量stockCoutn
print (stockCount) # 报错,stockCount变量未定义

这里一定要注意,在Python中,认为一切都是对象,所以变量进行赋值时,其实就是python在内存中创建了这个对象,然后将对象在内存中的地址存储在变量中了。

count = 100;    # 内存中创建了一个对象,对象的数据是100
id(count);
结果:1867079904   # 表示count中存放的内存地址
count = 200;   # 内存中创建了一个对象200
id(count)
结果:1867560352 # 表示此时count中存放的内存地址

注意1:python将所有的数据都存储为内存对象,变量其实就是指向对象的一个引用,只要需要,就可以让变量随时引用一个不同的对象
注意2:python内置了函数type(),用于检测给定数据的数据类型
注意3:使用赋值符=等号,用来将一个变量和内存中的对象绑定起来,如果对象在内存中存在就直接绑定,否则赋值运算符后面的对象会被即时创建之后进行绑定。

那就存在问题了,创建的100和200这两个数据,内存中进行了什么样的处理的呢?
python将这样没有引用变量指向的对象,回收到了对象缓冲池(PS:对象缓冲池也是内存中的一个区域),方便下次使用的时候直接获取,所以在使用python的时候,一定要注意内存泄漏的问题。关于python内存管理这一部分,后续会单独进行讲解

3.3.3. 变量的命名规则
  1. 只能包含字母、数字、下划线,且不能以数字开头
  2. 变量名称区分大小写,name和Name就是两个不同的变量
  3. 禁止使用python2和python3的保留字
3.3.4. 特殊变量

以一个下划线开头的变量名称,不会被import语句导入
前后各有下划线的变量名,是系统定义的变量名,有特殊含义
交互模式下,单个下划线中保存了最后的输出表达式的结果

3.3.5. 特殊用法:变量的交叉赋值

可以通过同时定义多个变量同时赋值的方式简化赋值操作
a, b = 11, 12
相当于a = 11, b = 12 的操作方式

3.4.操作符

操作符,就是用于进行数据运算的符号
常见的操作符一般有赋值运算符、算数运算符、逻辑运算符、关系运算符等等

3.4.1. 赋值运算符
运算符 描述 使用方式
= 直接赋值 a = 2 给a赋值数据2
+= 加法赋值运算 a += 2 a原来的数据加2再赋值给a
-= 减法赋值运算 a-=2 a原来的数据减去2再赋值给a
*= 乘法赋值运算 a*=2 a原来的数据乘以2再赋值给a
/= 除法赋值运算 a/=2 a原来的数据除以2再赋值给a
%= 取余赋值运算 a%=2 a原来的数据除以2,将余数赋值给a
**= 次方赋值运算 a**=2 将a原来的数据取2次方运算再赋值给a
//= 地板除法运算 a//=3 将a原来的数据地板除以3将结果赋值给a
3.4.2. 算数运算符
运算符 描述 使用方式
+ 加法运算 1 + 2 结果 3
减法运算 1 – 1 结果 0
* 乘法运算 12 * 12 结果 144
/ 除法运算 10 / 3 结果 3.333333
% 取余运算 10 / 3 结果 1
** 次方运算 10 ** 2 结果 100
// 地板除法运算 10 // 3 结果 3

注意
在Python2中,除法运算和地板除法运算是一个结果
在python3中,除法运算和地板除法运算结果不一样

3.4.3. 关系运算符

关系运算符,通过比较运算符两边的数据,返回一个布尔类型的结果

运算符 描述 使用方式
> 大于运算 1> 2 结果 False
< 小于运算 1 < 2 结果 True
>= 大于等于运算 12 >= 12 结果True
<= 小于等于运算 12 <= 11 结果 False
<> 不等于运算 10 <> 3 结果 True
!= 不等于运算 等同于<> ,如10 != 10,结果False
== 等于运算 10 == 3 结果 False
3.4.4. 逻辑运算符
运算符 描述 使用方式
and 并且运算 True and False 结果 False
or 或者运算 True or False 结果 True
not 非运算 not False 结果True

注意
这里的逻辑运算符,python中只有and|or|not,在其他语言中,也有类似&&、||、!的符号来表示and、or、not的三种关系的
and/&&:并且运算,当运算符两边的数据都为True才返回True,否则返回False
or/||:或者运算,当运算符两边的数据都是False才返回False,否则返回True
not/!:非运算,对结果进行取反,如果为True结果为False,如果为False则结果为True

3.4.5. 成员运算符
成员运算符,主要用于判断某个成员是否出现在某个对象中 运算符 描述 使用方式
in 如果在指定的变量中找到则为True,否则为False jiaoYue in heros
not in 如果在指定的变量中没有找到返回True jiaoYue not in heros

实际操作如下

heros = ["皎月女神", "暴走萝莉", "机械先驱", "九尾妖狐"]
feiCi = "潮汐海灵";
jiaoYue = "皎月女神";
feiCi in heros;
结果:False
jiaoYue in heros;
结果:True

python强势来袭-0010-变量&amp;amp;运算符

3.4.6. 标识运算符
标识运算符,主要用于两个不同的变量数据类型的检测 运算符 描述 使用方式
is 如果运算符两边的变量指向相同的对象则为True a is b
is not 如果运算符两边的变量指向不同的对象则为True a is not b
a = 12;
b = 12;
a is b
结果:True
a is not b 
结果:False

python强势来袭-0010-变量&amp;amp;运算符

【转自慕课】https://www.imooc.com

Python

用 Python 构建你自己的 RSS 提示系统

2022-3-3 14:00:04

Python

[硕.Love Python] 高斯N皇后问题(回溯法)

2022-3-3 14:01:10

搜索