首页 > 其他 > 详细

02-变量

时间:2020-12-27 21:22:02      阅读:28      评论:0      收藏:0      [点我收藏+]
# 变量
# 什么是变量? 为何要有变量?
# 变量的三大组成部分是?每部分的作用
# 变量的命名元组、规范、风格
# 变量值的三大特征是什么?
# is与==的区别

# 1、 什么是变量
# 变量是指可以变化的量,量指的是事物的状态,比如人的年龄、性别等

# 2、 为什么要有变量
# 为了让计算机能够像人一样去记忆事物的某种状态,并且状态是可以发生变化的
# 程序执行的本质是一系列状态的变化,变是程序执行的直接体现,所以我们需要有一种机制能够反映或者保存下来

# 3、 怎么用
# 3.1 变量基本使用
# 原则:先定义、后引用
name = ‘xxx‘  # 定义-->存
print(name)  # 引用-->取

# 3.2 内存管理:垃圾回收机制
# 垃圾:当一个变量值被绑定的变量名的个数为0时,该变量值无法被访问到,称之为垃圾
# 引用计数增加
x = 10  # 10的引用计数为1
y = x  # 10的引用计数为2
z = x  # 10的引用计数为3

# 引用计数减少
del x  # 删除变量名x与值10的绑定关系,10的引用计数变为2
# print(x, y)  # 打印x报错:NameError: name ‘x‘ is not defined
del y  # 10的引用计数变为1
# print(z)  # 10
z = 231  # 10的引用计数变为0
# print(z)  # 231

# 3.3 变量三大组成部分
# Ⅰ:变量名=>指向等号右侧值的内存地址,用来访问等号右侧的值
# Ⅱ:赋值符号:将变量值的内存地址绑定给变量名
# Ⅲ:变量值:代表记录的事物的状态

# 3.4 变量名的命名规则
# 原则:变量名的命名应该见名知意
# 3.4.1 变量名只能是 字母、数字、下划线的任意组合
# 3.4.2 变量名不能以数字开头 SyntaxError:invalid syntax
# 3.4.3 关键字不能声明为变量名,关键字:
# 查看所有关键字
#       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‘]
# 3.4.4-内置函数名不能使用---否则该函数失去函数意义!--ex--print

# 3.5 变量名的命名风格
# 3.5.1 纯小写加下划线的方式(在python中,关于变量名的命名推荐使用这种方式)
age_of_ly = 7
print(age_of_ly)
# 3.5.2 驼峰体
AgeOfLy = 7
print(age_of_ly)

# 3.6 变量值三个重要的特征
# 3.6.1 id、type、value
name = ‘LY‘
print(id(name))  # 2432816488048
print(type(name))  # <class ‘str‘>
print(name)  # LY
# id:反应的时变量值的内存地址,内存地址不同id则不同
# type:不同类型的值用来记录不同的状态
# value:值本身

# 3.6.2 is与==
# is:比较左右两个值身份id是否相等
# ==:比较左右两个值他们的值是否相等

# id不同情况下,值可能相同、即两块不同的内存空间李可以存相同的变量
# id相同的情况下,值一定相同

# pycharm执行
x = ‘info:ly:1023213‘
y = ‘info:ly:1023213‘
print(x, y)  # (‘info:ly:1023213‘, ‘info:ly:1023213‘)
print(id(x), id(y))
# (2972975406704 2972975406704)

# 命令行执行
# >>> x = ‘info:ly:1023213‘
# >>> y = ‘info:ly:1023213‘
# >>> x,y
# (‘info:ly:1023213‘, ‘info:ly:1023213‘)
# >>> id(x),id(y)
# (1829332913776, 1829332239152)
# >>> x is y
# False
# >>> x == y
# True

# 疑问:为什么在pycharm中x和y的id值怎么是一样的?
# 这是因为在pycharm中 ,每次运行是所有代码都加载到内存中,属于一个整体,
# 所以这个时候会有一个大整数对象池,即处于一个代码块的大整数是同一个对象,我们只需要记住这是一种优化机制,无需细究。

# 3.6.3 小整数池[-5,256]
# python对小整数的定义是【-5,256】这些证书对象是提前建立好的,不会被垃圾回收。

# 4. 常量:不变的量
# 注意:python语法中没有常量的概念,但是在程序的开发过程中会涉及到常量的概念
AGE_OF_LY = 18  # 小写字母全为大写代表常量,这只是一种约定、规范

02-变量

原文:https://www.cnblogs.com/LYPZX/p/14198379.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!