Ethon

为什么要有方法,因为懒惰是一种美德。

   :: 首页  :: 新随笔  ::  ::  :: 管理

1、变量的定义

变量:其实就是我们生活中起的别名和外号,让变量名指向某个值,格式为:【变量名 = 值】,在python中,每个变量在使用之前都必须赋值,变量只有在赋值之后才会被创建。

name = "张三"
age = 12

2、变量的命名

Python中的变量名不是随便定义的,关于变量名的定义需要遵循如下规范:

1.三条规范(必须遵循,否则定义变量会报错)

  • 变量名只能由 字母、数字、下划线 组成

  • 变量名不能以数字开头

  • 变量名不能是Python内置关键字,如:class,def,for,not,or...

2.两条建议

  • 下划线命名法,多个单词表示的变量名用下划线连接(均小写)

  • 见名知意,通过阅读变量名就能知道此变量的含义

3、内存指向

Python 的变量名其实是内存地址的“别名”(reference)也就是数据存储的内存起始地址,如下图:

# 在计算机的内存中创建一块区域保存字符串"Liming",name变量名则指向这块区域
name = "Liming"
age = 12
print(hex(id(name)))
print(hex(id(age)))

 

 情景一:两个变量同时指向一个内存地址的情况,如下图所示:

 

情景二:在计算机的内存中创建一块区域保存字符串”Liming”,name变量名则指向这块区域。然后又在内存中创建了一块域保存字符串”Lisi”,name变量名则指向”Lisi”所在的区域,不再指向”Liming”所在区域(无人指向的数据会被标记为垃圾,由解释器自动化回收)

name = "Liming"
name = "Lisi"
print(name)

 

情景三:在计算机的内存中创建一块区域保存字符串”Liming”,name变量名则指向这块区域(灰色线), 然后new_name指向name所指向的内存区域,最后又创建了一块区域存放”Lisi”,让name变量指向”Lisi”所在区域。

name = "Liming"
new_name = name
name = "Lisi"
pring(neme)
pring(new_name)

 

情景四:在计算机的内存中创建一块区域保存整型12,age变量名则指向这块区域。通过类型转换依据整型12再在内存中创建一个字符串”12”, new_age变量指向保存这个字符串的内存区域。

age = 12
new_age = str(age)

 

posted on 2022-04-23 09:42  Ethon  阅读(104)  评论(0编辑  收藏  举报