1. 变量常量

Posted j-chao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1. 变量常量相关的知识,希望对你有一定的参考价值。

一:变量

1.什么是变量

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

2.为什么要有变量

  为了让计算机能够像人一样去记忆事物的某种状态,并且状态是可以发生变化的

  详细地说:

    程序执行的本质就是一系列状态的变化,变是程序执行的直接体现.

    所以我们需要有一种机制能够反映或者说是保存下来

3.如何用变量

先定义,后使用

二:变量的使用

1.变量基本使用

原则:先定义,后引用

技术图片

name = ‘egon‘  # 定义变量 ---> 存
print(name)     #引用变量 ---> 取

age = 18
print(age)

2.内存管理:垃圾回收机制

  • 垃圾:当一个变量值被绑定的变量名的个数为0时,该变量值无法被访问到,称之为垃圾

引用计数增加

x = 10  # 10的引用计数为1
y = x  # 10的引用计数为2
z = x  # 10的引用计数为3

引用计数减少

del x  # 解除变量名x与值10的绑定关系,10的引用计数变为2
# print(y)
del y  # 10的引用计数变为1
# print(z)
z = 12345   # 10的引用计数变为0
# print(z)

3.变量的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‘]

PS:不要用拼音,不要用中文,在见名知意的前提下尽可能短

5.变量名的命名风格

① 纯小写加下划线的方式

(在python中,关于变量名的命名推荐使用这种方式)

age_of_alex=73
print(age_of_alex)

② 驼峰体

AgeOfAlex=73
print(AgeOfAlex)

6.变量值三个重要的特征

name=‘egon‘
# id:反映的是变量值的内存地址,内存地址不同id则不同
  print(id(name))

# type:不同类型的值用来表示记录不同的状态
  print(type(name))

# value:值本身
  print(name)

变量的值不同,id不同

变量的值相同,id可以相同,也可以不同

id相同,值一定相同(同一块内存地址,全都相同)

id不同,值可以相同,也可以不同(不同的内存地址,可以放一样的,也可以不一样)

7. is 与 ==

is:比较左右两个值身份id是否相等

==:比较左右两个值他们的值是否相等

# 值相等,id可能不同,即两块不同的内存空间里可以存相同的值
# id 相同,值一定相同,x is y 成立,则 x == y 也必然成立

>>> x=‘info:Egon:18‘
>>> y=‘info:Egon:18‘
>>> print(x,y)
info:Egon:18 info:Egon:18
>>> print(id(x),id(y))
4565819264 4566192176
>>> 
>>> x == y
True
>>> x is y
False

8.了解:小整数池[-5,256]

从python解释器启动那一刻开始,就会在内存中事先申请好一系列内存空间存放好常用的整数

>>> m=10
>>> n=10
>>> id(m)
4562619328
>>> id(n)
4562619328
>>> 
>>> res=4+6
>>> res
10
>>> id(res)
4562619328
>>> x=-5
>>> y=-5
>>> x is y
True
>>> x=-6
>>> y=-6
>>> x is y
False
>>> x=‘aaa‘
>>> y=‘aaa‘
>>> 
>>> 
>>> id(x)
4566200880
>>> id(y)
4566200880
x=-6
y=-6
print(id(x))
print(id(y))
print(x is y)

三:常量:不变的量

注意:python语法中没有常量的概念,但是在程序的开发过程中会涉及到常量的概念

AGE_OF_ALEX=73 # 小写字母全为大写代表常量,这只是一种约定、规范
AGE_OF_ALEX=74
print(AGE_OF_ALEX)

以上是关于1. 变量常量的主要内容,如果未能解决你的问题,请参考以下文章

常量未分配的可选项默认情况下不会为 nil

14.VisualVM使用详解15.VisualVM堆查看器使用的内存不足19.class文件--文件结构--魔数20.文件结构--常量池21.文件结构访问标志(2个字节)22.类加载机制概(代码片段

IDEA - 抽取方法参数快速抽取(方法,变量,字段,常量,参数等),重构,优化代码

append() 在这个代码片段中是如何工作的?与特定变量混淆[重复]

怎么把C语言中定义的符号变量替换为对应的常量?求代码

delphi 常量数组赋值给变量数组