python变量

1.变量

一、什么是变量?

变量从字面上的意思就可以理解成:是变化的量,描述世间万物的状态。

  • 变:现在世界中的状态是会发生改变的。
  • 量:记录现实世界中的状态,让计算机能够像人一样去识别万物。

二、为什么要有变量?

对于现实世界,一定是要有一个变量来描述世间万物的。但是计算机为什么也要有变量的概念呢?其实计算机中程序的运行就是一系列状态的变化,如王者荣耀中账号等级0级到30级、废铁到王者;植物大战僵尸中僵尸打着打着就死了。

三、定义变量

既然知道了变量是什么玩意,那我们如何在python中定义变量呢?

## 例子:
name = 'mila'
age = '19'
height = '180'
##上面都是变量

四、变量的组成

从我们上面的定义来看,变量可以分为以下三个部分:

变量名(接受变量值) = (赋值符号) 变量值

  1. 变量名:变量名用来引用变量值,但凡需要用变量值,都需要通过变量名。

  2. 赋值符号:赋值

  3. 变量值:存放数据,用来记录现实世界中的某种状态。

    # 只有变量名,赋值符号,变量值,会报错,而且毫无意义
    name
    + 
    =
    100
    
    name = 'mila'
    age = '19'
    height = '180'
    print(name)
    print(age)
    print(height)
    #输出:
    mila
    19
    180
    

五、变量名的命名规范

变量是有一定的命名规范的一定要记住,定义一个变量其实就是在记录现实世界中的状态,并且存永远不是目的,取才是目的。

变量的命名应该要满足以下三个条件:

  1. 变量的命名应该能反应变量值所描述的状态。

  2. 变量名必须由字母数字下划线组合,并且变量名的第一个字符不能是数字。

  3. 关键字不能声明为变量名。

  4. 变量名都具有可读性(意思),存不是目的,取才是目的

    1. 查找关键字

      import keyword
      print(keyword.kwlist)
      

注意:可以用中文命名,但是不建议使用

身高 = 180
print(身高)
#输出:
180

六、变量名的俩种风格

6.1 驼峰体

AgoOfChen = 19
print(AgoOfChen)

19

6.2下划线(推荐使用)

age_of_chen = 19
print(age_of_chen)

19

注意:以上俩种变量名的风格,推荐使用下划线的风格

2.变量的三个特征

对于每一个变量,python都提供了这三个方法分别获取变量的三个特征,其中python的内置功能的id(),内存地址不一样,则id()后打印的结果不一样,因为每一个变量值都有其内存地址,而id()是用来反映变量值在内存中的位置,内存地址不同则id不同。

x = 10
print(x)#获取变量的变量值
print(id(x))#获取变量的id,可以理解成变量在内存中的地址
print(type(x))#获取变量的数据类型,下章会详细介绍数据类型

一、打印

x = 10
print(x)# 获取变量的变量值

二、判断变量值是否相等

name1 = 'egon'
name2 = 'chen'
print(name1 == name2)  # 获取变量的变量值

三、判断变量id是否相等

x = 11 
y = x
z = 11
print(x == y)  #True

True

print(x is y)#True

True

print(x is z)#True

True

x = 257
z = 257
print(x is z) #False

Talse

从上述的打印消息可以看出:id相等的变量,值一定相等,指向的是同一个内存地址;值相等的变量,id不一定相等。

某种在第一次打印print(x is z)的时候就触发了整数池,这可以理解成python的优化机制,11的值本身不大,并且由于我们快速的再一次使用了11,在由于申请内存空间需要计算机开销,因此python让x和z都指向同一个11,因此存不是目的,取才是目的,这样进行优化的话并不会影响程序的运行。

3.花式赋值

一、链式赋值

a = 10
b = 10
c = 10
d = 10
print(f'a:{a},b:{b},c:{c},d:{d}')#a:10,b:10,c:10,d:10
输出:a:10,b:10,c:10,d:10
a = b = c = d = 10
print(f'a:{a},b:{b},c:{c},d:{d}')#a:10,b:10,c:10,d:10
输出:a:10,b:10,c:10,d:10

二、交叉赋值

#中间变量的思想
x = 100
y = 200

temp = x
x = y
y = temp
print(f'x:{x}') #x:100
print(f'y:{y}') #y:200
输出:

x:100

y:200
## 交叉赋值
x = 100
y = 200
x, y = y, x
print(f'x:{x}')
print(f'y:{y}')
输出:

x:100

y:200

原文地址:https://www.cnblogs.com/SkyOceanchen/p/11263978.html