1-浅谈 python变量
浅谈 python变量
python变量概念
程序执行的过程中,很多数据都在变化的过程,我们需要一种机制把这种变化体现出来,变量是我们记录这种变化的方式。
python以及其它各种语言的变量 ,其作用都是用于存数据的,可以存动态的数据,大小,速度, 也可以存相对静态的数据,如性别 年龄等。
我们之所以需要变量去存数据,是为了在程序运行过程中后面去取出来变量的值,存的目的是为了取,为了使用。 存是手段,取才是目的。
变量的使用原则: 先定义 后引用
name = 'alin'
print(name)
alin
变量的三大组成部分
变量名字 赋值符号 变量的值
变量名的要求
上面说过 变量的作用是存数值,为了方便后面的使用,当我们在使用变量的值的时候 是通过变量名把值取出来的,所以在命令变量名的时候,要尽量做到,见名知意。什么意思那 比如我们给30个小朋友起名字 为了区分男女,女孩名字一般叫 什么花 什么芬 什么雅, 男孩叫 什么勇 什么壮,什么宏 这样当我们看到名字的时候 不用去查看详细的个人资料就能知道小朋友的性别,总结一句话
不要给小女孩起名 王大锤
python对变量名的命名也有一些具体的要求
-
变量名只能是 字母、数字或下划线的任意组合
像我们的名字 只能出现汉字和阿拉伯字母,你给自己起名 刘? 试试民政局的人打不打你)
-
变量名的第一个字符不能是数字
(就像我们的名字第一个是姓氏,python 变量的姓氏不能是数字)
-
关键字不能声明为变量名,常用关键字如下
故名思意 下面这些变量名python自己用了 你就别用了
import keyword print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
python的命名风格推荐小写字母+下划线的方式
age_student = 20
变量的三个特性
- id : 反映的是变量在内存中的地址,内存地址不同,则id不同,
我们可以把内存当成酒庄 变量名就是酒瓶上的名字 内存地址就是酒瓶 变量的值就是里面的酒。
name = 'alin'
print(id(name))
2683195291888
-
type:不同类型的值用来表示记录不同的状态
name = 'alin' print(type(name))
<class 'str'>
-
value:值
name = 'alin' print(name)
alin
-
变量的比较
is与==
-
is 比较左右两个值的身份是否相同, 酒庄举例 这辆到底是不是一瓶酒
-
== 比较左右两边的值是否相同 酒庄举例 这两瓶装的到底是不是一样的酒
x = 'info:age:18' y = 'info:age:18' print(id(x)) print(id(y)) print(x == y) print(x is y)
3019507091920
1512378137008
True
False注: pycharm中会做内存优化 需要在命令行操作验证
得出的结果x和y是相等的 但是x不是y
小整数池[-5,256] 在python中 一些常用的值 python会预先开辟出一块空间,相同的变量的值直接取用,不在另外开辟内存空间,节省内存
x = -5 y = -5 print(id(x)) print(id(y))
140718716872320
140718716872320x = -6 y = -6 print(id(x)) print(id(y))
1908425730864
1908425728176x = 256 y = 256 print(id(x)) print(id(y))
140718716864064
140718716864064x = 257 y = 257 print(id(x)) print(id(y))
2290485209904
2290485207216注意:python语法中没有常量的概念,但是在程序的开发过程中会涉及到常量的概念
AGE_OF_ALIN = 73 # 小写字母全为大写代表常量,这只是一种约定、规范
AGE_OF_ALIN='19' print(AGE_OF_ALIN)
19
-