dir_函数_得到当前作用域的所有变量列表_builtins
回忆上次内容
- 上次了解了 try 的完全体
- try
- 尝试运行
- except
- 发现异常时运行的代码块
- else
- 没有发现异常时运行的代码块
- finally
- 无论是否发现异常最终都要运行的代码块
- 上图就是python连接数据库的类库psycopg中
- try的具体应用
- 如果成功 就 提交commit
- 如果失败 就 回滚rollback
- 无论成功失败 都要 断开连接
- 为什么print函数
- 不用声明和导入?🤔
- 直接就能用呢?🤔
回忆过去
- 为什么 python
- 能认识 print?
- 而不认识 pront??🤔
- 上次 把print函数 删除了
- 是怎么做的来着?🤔
删除 print 函数
- 是内建模块的成员函数
del __builtins__.print
- 删除
__builtins__.print
print
- 想要再找print
- 也出现了 NameError
- name 'print' is not defined!😊
- print果然是
__builtins__
的成员
- 具体的 帮助细节
怎么
查呢?
help(print)
- 什么不会 就help什么
help(print)
- 把函数名 作为参数 传进去
help(print)
- 喊救命也没有用
重启游乐场
python3
- 重启游乐场
help(print)
- 再喊救命
- print是
- 系统 内建模块(
__builtins__
)中的 函数
类似
- 类似的 还可以
- help(ord)
- help(chr)
- help(input)
- 都是 in module builtins
- builtins 具体是什么呢?
locals
- 查看本地变量
- locals函数 返回值
- 既有变量名
- 又有变量的值
- builtins 前后 都有 双下划线
- 双下划线 叫做 dunder
__builtins__
念作dunder builtins
- builtins里面都有什么?
- 我能对着他喊救命吗?
查看帮助
help(__builtins__)
- 查看帮助
- 这模块里有些什么?
浏览
- 按 方向键
- 可以翻阅文档
- 内容 真的很多 啊
- 找找 我们 的 老熟人
- NameError 是
__builtins__
内建模块 里面的- 一个成员
- 类似的还有
- ValueError
- TypeError
- IndentationError
继续观看
- ctrl + f
- 向前翻阅
- forward
- ctrl + b
- 向后翻阅
- backward
- 操作方法 与vim 相同
- 想要直接 跳转到 print函数那里
查找函数
- 按下 /
- 再键入print
- 进行搜索
- 注意左下角
- 回车
- n
- 下一个匹配单词
- next
- N
- 上一个匹配单词
找到位置
- 更精准搜索
/print\(
- 找到 print的帮助
对比
help(print) help(__builtins__.print)
- 这和help(print)完全一样
- print 是
__builtins__
里面的 内建函数
- 其中.(点)的意思 就是
里面的
__builtins__
这个模块 就是里面的
内建模块
- 查询 成员
- 有
更快
的办法吗?
查询函数
- 输出
__builtins__.
- 按下tab 查看成员
- 有很多成员类、错误
- 大驼峰命名法
- 很多熟悉的身影
继续
- 后面的是成员函数
- 蛇形命名法
- 老熟人不少
- 还有 什么
更快
的方法
- 可以 查询 模块中的成员 吗?
问问ai
- python3(游乐场) 中
- 键入
dir()
dir()
内置 函数
- dir的 意思 是
directory
(文档目录)
- dir函数 列出
- 自带模块 列表
- 这 和 locals()很像啊
- 我们去试试
- 变量a的一生
过程
- 换个角度观察
- 让我们祈祷
- a 往生 极乐世界
- dir() 和 locals()
- 太像了
- 有啥区别呢?
locals()
- locals函数 呢
- 不但 有变量名
- 还有 变量的值
- 返回的是 所有本地成员的 字典
- 但是只能看本地
- 当前作用域之下的
- dir呢?
dir
help(dir)
- dir()可以得到
- 当前作用域(scope)内
- 所有成员 列表
- dir函数 还可以将 模块作为 参数
- 列出 模块中的成员
- 比如 去看看
__builtins__
- 有哪些成员
dir()
dir(__builtins__)
- 看见 很多 老熟人
- 他们 都是 干什么的 来着?
- 你还 记得 吗?
总结
- 游乐场里面 已经有了一些函数
- ord
- chr
- print
- 这些函数 位于
__builtins__
模块 - 都是 内建函数
- 新函数 dir
- 可以 查询
- 模块中的 成员
- 上次 把
__builtins__
模块 删除了
- 是 怎么做的 来着?🤔