Skip to content

Latest commit

 

History

History
157 lines (108 loc) · 3.43 KB

155-529966-删除变量.sy.md

File metadata and controls

157 lines (108 loc) · 3.43 KB
show version enable_checker
step
1.0
true

删除变量

回忆上次内容

  • 上次我们研究了字节序
  • 字节序有两种
    • big-endian - >h
    • little-endian - <h
  • 这个可以用来明确整型存储的顺序
  • 我们如果读写文件出了错
    • 可以考虑一下
    • 是否是因为字节序出的问题
  • 变量可以声明、初始化了
  • 但是又应该如何删除呢?🤔

有生就有死

  • 万物有生就有死
    • 所谓出生入死
    • 一出生的时候就注定着往死亡去走了

图片描述

  • 变量也是
    • 声明的时候也就注定了他会释放
    • 怎么释放呢?

声明和赋值

  • 一个变量
    • 在声明之前是不存在的
    • 声明给变量a了生命
    • 并给了变量a初始值1

图片描述

  • 这样a就从无到有了
    • 有了之后
    • 会有什么变化呢?

变化

  • 有生于无
    • 但有了之后
    • 一切就具体了

图片描述

  • 一开始a是一个int型的变量
    • 有个一个具体地址
  • 后来a是一个float型的变量
    • 又有了一个新的地址
  • 怎么删除他呢?

删除

  • del a
    • 就可以把a从有变回到无
    • 这个时候就找不到a了
    • 这个名字不在名字空间中
    • 也就没法以a的名字进行编程了

图片描述

  • 这怎么理解呢?
    • 什么不会就help什么

查询手册

图片描述

  • del
    • 既不是模块
    • 也不是类
    • 更不是函数
  • 那他是到底什么?

直接帮助

  • 此外还可以在游乐场直接进帮助
#查看帮助
help()
  • 使用help()函数

进入游乐场帮助

图片描述

  • 注意提示符变了
  • 不再是>>>
  • 而是help>

关键字

图片描述

del的帮助

图片描述

  • 定义的变量好像可以在global的范围内可见

退回游乐场

  • 可以按q退回到游乐场帮助

图片描述

  • 在游乐场帮助中可以quit()回到游乐场
  • 名字空间里面都有些什么变量呢?

dir()

图片描述

  • 这个dir()好像可以得到当前作用域(scope)内所有的变量
  • 我们去试试

过程

  • 下图就是变量a的一生

图片描述

  • 让我们祈祷
    • a往生极乐世界
    • 往生之后再找a就是NameError了
  • 好了
    • 去总结吧

总结

  • 我们这次研究了变量的死
  • 有生就有死
    • 原本的死是在程序退出的时候自动执行的
    • 也可以手动给变量执行死刑
      • del
  • del(a)之后
    • dir()就无法在当前作用域(scope)内观察到这个变量了
    • 也就是说a死了😱
    • 当然我们还可以让他重生
    • 感觉自己成了造物主了
  • 这次主要就是研究变量之死
  • 变量里面还有什么需要注意的么?🤔
  • 下次再说👋