• 变量


    变量

    一丶什么是变量

    一丶 什么是变量

    字面意思来说,变化的量。

    变:就是可以改变。量:所记录现实世界的状态。

    二丶 为什么要有变量

    对于现实世界,一定是要有一个变量来描述世间万物的。计算机中程序的运行就是一系列状态的变化。

    三丶定义变量

    name = '十七zz'
    
    age = 17
    
    gender = 'male'
    
    height = 180
    
    weight = 140
    

    四丶 变量的组成

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

    ​ 2.赋值符号:赋值

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

    五丶 变量名的命名规范

    定义一个变量其实就是在记录现实世界中的状态,并且存永远不是目的,取才是目的。所以变量的命名应该满足以下三个规范:

    1.变量的命名应该能反映变量值所描述的状态,切记不要用中文

    2.变量名必须是数字字母下划线组合,开头不能是数字

    3.不能用关键字

    六丶 变量名的两种风格

    驼峰体和下划线,推荐使用下划线。

    3.Python基础

    常量

    常量就是不变得量,但是python中没有使用语法强制定义常量,也就是说,python中定义常量本质上就是变量。如果非要定义常量,变量名必须大写。

    AGE_OF_NICK = 19
    print(AGE_OF_NICK)
    

    19

    常量可以改,但没有必要。

    python变量内存管理

    一丶变量存哪里?

    存在硬盘里的一个小空间

    二丶 Python垃圾回收机制

    2.1 引用计数

    x = 10 # 10引用计数加一为1
    
    y = x  #  10引用计数加1为2
    
    x = 11 # 10引用计数减1为1;11引用计数加1为1
    
    del y  # 10引用计数减1为0 ,触发python垃圾回收机制,python清理10的内存占用
    
    
    

    三丶 小整数池

    Python实现int的时候有个小整数池。为了避免因创建相同的值而重复申请内存空间所带来的效率问题, Python解释器会在启动时创建出小整数池,范围是[-5,256],该范围内的小整数对象是全局解释器范围内被重复使用,永远不会被垃圾回收机制回收。

    在pycharm中运行python程序时,pycharm出于对性能的考虑,会扩大小整数池的范围,其他的字符串等不可变类型也都包含在内一便采用相同的方式处理了,我们只需要记住这是一种优化机制,至于范围到底多大,无需细究。

    变量的三个特征

    一丶打印

    print(x)
    print(id(x))
    print(type(x))
    

    二丶判断变量值是否相等

    True False

    三丶判断变量id是否相等

    x = 11
    y = x
    z = 11
    print(x == y) # True
    print(x is y) # True
    print(x is z)# True,整数池的原因
    
    x = 257
    z = 257
    print(x is z)  # False
    

    id相等的变量,值一定相等,指向的是同一个内存地址;值相等的变量,id不一定相等。

    花式赋值

    一丶链式赋值

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

    二丶交叉赋值

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

    注释

    一丶注释

    代码注释分单行和多行注释,单行注释用#,多行注释可以用三对单/双引号,使用三引号注释可以换行。

    二丶添加注释的原则

    1. 不用全部加注释,只需要在自己觉得重要或不好理解的部分加注释即可

    2. 注释可以用中文或英文,但不要用拼音

  • 相关阅读:
    java学习day08--面向对象--继承+方法重写+static关键字
    java学习day07--面向对象--封装+this关键字+构造器
    java学习day06-面向对象--类和对象
    依赖管理
    NSQ消息队列
    logger包
    time包
    fmt包
    Go_Protobu
    Go_性能优化
  • 原文地址:https://www.cnblogs.com/shiqizz/p/11279126.html
Copyright © 2020-2023  润新知