4、语法之变量以及基本数据类型
一、变量的定义?什么是变量?
变量可以分成变和量进行分析。变就是变化,而量指的是事物的状态。
所以变量就是事物状态的变化。
二、为什么需要变量?变量有什么用?
计算机是模仿人类制成的,而人类用来记录事物变化的是人的大脑,是人的记忆。
所以说变量是希望计算机拥有人一样能够记录状态正在不断改变的事物。
程序执行的本质就是变化,我门需要一种机制能够记录下程序变化的状态。
三、怎么用变量?
3.1、变量首先要求先定义再调用
变量有三部分组成,分别是变量名,赋值符号以及值。示例如下:egon=18
编辑器在执行程序代代码是会申请一个存放值的空间,将值的内存地址绑定给变量名。
即可以通过变量名去找到对应值,也可以找到值的内存地址。例如:id(egon)
3.2、变量名的命名规范
1.要求变量名应该见名知意,并且尽可能短些。
2.变量名只能由有字母,数字以及下划线组成。
3.变量名第一个字符不能是数字。
4.变量名只能以关键词命名,如下:
['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', 'raise', 'return', 'try', 'while', 'with', 'yield']
3.3、变量名的命名风格
命名风格有两种分别是:
1.驼峰体:单词开头用英文大写,例如:AgeOfOldboy =18
2.纯小写加下划线(推荐使用风格)age_of_oldboy =18
3.4、变量值的三大特性
变量值的三大特性分别是id、type以及value
例如:egon=18
print(id(egon)) # 可以显示出18这个值存放在内存中的哪个位置。
print(type(egon)) # 可以显示18是整型的。
value指的就是变量值
3.5、小整数池
Python为了节省内存空间,因此将常用的字母以及数字-5~256之间都生成了永久保存在内存中,有固定的id。
因此当值为这些数字时,相同的数值,他们的id相同。
3.6、is与==的区别
is对比的是变量的两个id,两个值相同,变量不一定相同。例如:
这是由于内存中已经生成两个不同位置的'a,1'。
==对比的是两个变量的值
3.7、垃圾回收机制之引用计数
当一个value没有对应的key时,Python的后台将会自动将这个value清除。
1.通过del解除key与value之间的绑定
2.通过赋值的关系将key赋值给另一个value。
四、常量
4.1、什么是常量
常量指的是不会因为程序的执行而变化的值。
4.2、为什么要有常量
人类定义数字的过程中,有一些符号代表特定的数值,而计算机中也要使用到这些数值,因此命名为常量
例如:π=3.1415926.....
4.3、常量怎么使用
在Python语言中并没有专门定义常量的使用,约定俗成的书写为大写字母,其余与变量的使用一致。
五、基础数据类型
5.1、为什么要有数据类型?
为了计算机能够像人一样去记录时间万物,因此将不同的事物用不同的类型表达。
5.2.1、什么是整型int?
以整数的形式去记录事物相关的状态,例如年龄,身份证,电话号码等等
5.2.2、整型int怎么用?
例如: age=18
print(type(age)) # int
5.3.1、什么是浮点型float?
以小数的形式去记录事物相关的状态,比如,身高,体重,薪酬等等
5.3.2、浮点型float怎么用?
例如:salary=15.3
print(type(salary)) #float
5.4.1、什么是字符串类型str
通常用来记录人的姓名,家庭住址,性别等描述性的状态
5.4.2、字符串类型str怎么用?
例如name='Tom'
print(type(name)) #str
字符串的可以使用单引号,双引号,以及三引号。但内部如果有单引号,外部就要用双引号了。
5.5.1、什么是列表类型list
通常用来记录同种属性多个值的状态。例如:多个学生姓名等等
5.5.2、怎么使用列表类型list
例如:students_name=['张三','李四','王五']
print(students_name[0]) # '张三'
print(type(students_name)) #list
5.6.1、什么是字典类型dict
通常用来记录不同属性多个值的状态,例如姓名,年龄,身高等等。
5.6.2、怎么使用字典类型dict
例如:person_info={'name':'egon'
'age':18
'height':1.8
}
print(person_info['name']) # egon
5.7.1、什么是布尔值
通常是用来记录真和假两种状态的。例如: is_ok=True或者 is_ok=False
5.7.2、怎么使用布尔值
通常在if判断中使用: if 2》1 # Ture