zoukankan      html  css  js  c++  java
  • 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
    

  • 相关阅读:
    paip.禁用IKAnalyzer 的默认词库.仅仅使用自定义词库.
    paip.语义分析分词常见的单音节字词 2_deDuli 单字词 774个
    IFL嵌入式小组技术博客入口导航
    devc++5.0.0.9的调试方法
    getch()、getche()和getchar()之间的区别
    devc++5.0.0.9的调试方法
    声明和定义的区别
    IFL嵌入式小组技术博客入口导航
    C/C++程序到内存分配个人总结
    getch()、getche()和getchar()之间的区别
  • 原文地址:https://www.cnblogs.com/SkyOceanchen/p/11263978.html
Copyright © 2011-2022 走看看