一、变量
1. 什么是变量
量:衡量/计量/记录某种状态 变:记录下来的某种状态是可以发生变化的
2. 为何要用变量
为了让计算机能够像人一样去识别世间万物,更接近于人的思想 如何识别,就是把事物的特征记录下来=>变量的定义
3. 如何用变量
变量的使用必须遵循:先定义,后引用
定义变量,例如:
x=10
name = '熊大'
age=18
salary=15k
定义一个变量分为三部分 :1. 变量名:变量名是访问到值的唯一方式 2. 赋值符号:将值的内存地址"赋值"给变量名 3 .变量的值:记录状态
变量名的命名规范: 大前提:变量名的命名应该对值有描述性的功能 1. 变量名只能是 字母、数字或下划线的任意组合 2. 变量名的第一个字符不能是数字 3. 关键字不能声明为变量名
变量名的命名风格: 1. 驼峰体: OldboyOfAge=73 2. 下划线纯小写式 : oldboy_of_age=73 在python中变量名的命名推荐使用2
补充:运行python程序的三个阶段(★★★★★)
python3 D:\test.py 1. 先启动python解释器 2. python解释器将python文件由硬盘读入内存 3. python解释器解释执行刚刚读入内存的代码,开始识别python语法
引用计数:计算值被关联了多少个变量名
引用计算一旦为零就是垃圾,会被python的垃圾回收机制自动清理
引用技术增加
x=10
y=x
引用技术减少
x=10
del x 解除变量名与值10内存地址的绑定关系
变量值具备三个特征: 1. id: 变量值的唯一编号,内存地址不同id则不同 2. type:类型 3. value 值
常用方法
x=10
y=x
print(id(x),id(y))
age=10
print(id(age))
print(type(age))
print(age)
is与== : is身份运算:比较的是id是否相等 ==判断值是否相等
例如:x=10
y=x
print(id(x),id(y))
print(x is y) #id相等,值一定相等
print(x == y)
值相等id不一定相等
>>> x=111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
>>> y=111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
>>> id(x)
2181129522824
>>> id(y)
2181129523040
>>> x is y
False
>>> x == y
True
常量(一般约定俗称用大写字母)
OLDBOY_OF_AGE=73
OLDBOY_OF_AGE=74
print(OLDBOY_OF_AGE)
二、数据类型
1. 什么是数据类型
变量值即我们存放的数据,数据类型及变量值的类型
2. 变量值为何要区分类型
因为变量值使用记录现实世界中事物的特征,针对不同的特征就应该用不同类型的值去标识
3. 如何应用数据类型
1. 整型int: 年龄\身份证号\电话号码\等级
age=18
print(id(age),type(age),age)
2. 浮点型float:薪资\身高\体重
salary=3.1 #salary=float(3.1)
print(id(salary),type(salary),salary)
3.字符串类型str: 名字\家庭住址\单个爱好\性别等等描述性质的特征
定义:在引号(单引号\双引号\三引号)内包含一串字符
name1='egon'
name2="egon"
name3="""egon"""
print(type(name1))
print(type(name2))
print(type(name3))
msg='my name is "egon"'
print(msg)
msg1='hello'
msg2='world'
res=msg1 + msg2
print(res,type(res))
print(msg1)
print('='*100)
print(msg2)
4. 列表list: 记录多个值,比如人的多个爱好,一个班级多个学生的性别
#定义:在[]内用逗号分隔开多个任意类型的值
l=[1,3.1,'aa',['a','b','c',['aaaa','bbbb']]]
# print(l)
# print(l[0])
# print(l[2])
# print(l[3][1])
# print(l[3][3][0])
5.字典dict: 记录多个key:value值,
students=['egon','lxx','yxx']
print(students[0])
name age sex level hobbies
info=['egon',18,'male',10,['music','read','dancing']]
print(info[0])
print(info[2])
定义:在{}内用逗号分隔开多个key:value的值,其中value可以是任意数据类型,
而key通常应该是字符串类型
info={
'name':'egon',
'age':18,
'sex':'male',
'level':10,
'hobbies':['music','read','dancing']
} #info=dict(...)
print(type(info))
print(info['level'])
print(info['age'])
print(info['hobbies'][1])
emp_info={
name':'egon',
'hobbies':['play','sleep'],
'company_info':{
'name':'Oldboy',
'type':'education',
'emp_num':40,
}
}
print(emp_info['company_info']['name'])
6.布尔类型bool: True/False,用来标识条件是否成立
age=18
print(age > 30)
print(age < 30)
所有类型的值都自带布尔值: 当数据类型的值为0,None,空时,布尔值为False,除此以外都为True
print(bool(0))
print(bool(None))
print(bool(''))
print(bool([]))
print(bool({}))
print(bool(1))
if None:
print('条件成立了11确实大于10的')