[oeasy]python057_如何删除print函数_dunder_builtins_系统内建模块

简介: 本文介绍了如何删除Python中的`print`函数,并探讨了系统内建模块`__builtins__`的作用。主要内容包括:1. **回忆上次内容**:上次提到使用下划线避免命名冲突。2. **双下划线变量**:解释了双下划线(如`__name__`、`__doc__`、`__builtins__`)是系统定义的标识符,具有特殊含义。

[词根溯源]如何删除print函数_dunder_builtins_系统内建模块

回忆上次内容

  • 上次 用到了  下划线
位置 作用
放后面 避免名字冲突

  • 为什么 很多本地变量
  • 两边 都有 两个下划线
  • __name__
  • __doc__
  • __builtins__
  • 有什么说法吗??🤔

询问

  • 双下划线
  • 是 系统建立的
  • 有特殊的含义
  • 去游乐场
  • 问问python本人

说明文档

  • 直接help主题的名字

help("IDENTIFIERS")

  • 查找 标识符的帮助

  • 两边双下划线
  • 代表 系统定义的标识符
  • 比如__builtins__

  • 突然发现print函数不在本地

删除

  • 可以删除print函数吗?

del print

  • 无法删除!

  • 如果我想删除呢?

找到位置

print

  • print是
  • built-in function
  • 内建模块 的 函数

  • 内建模块 是不是 就是
  • __builtins__ ???🤔

查看

type(__builtins__)

  • builtins 是 内建模块
  • print会不会在这个模块里?

  • 如何调用模块中的函数来着?

回忆火星文

  • 新艺术 是怎么清屏的呢?
  • 使用 系统命令
  • clear

os.system("clear")

  • os 是模块名
  • 后面的点(.) 表示里面的
  • system 是函数名

照猫画虎

__builtins__

__builtins__.print

__builtins__.print("Hello world!")

  • 确实找到了!
  • print 就是
  • __builtins__ 模块里的 函数

  • 能删除吗?

删除

del __builtins__.print

print

  • 带着模块名 一起删

  • 删完了
  • 就真的 连 print 都找不到了!!!😭
  • __builtins__
  • 这个系统模块
  • 太重要了!!!
  • 怎么读呢?

dunder来历

  • 两个下划线
  • Double UNDERscore
  • 省略读法 dunder

Dunder (Double UNDERscore) Alias

Mark  Jackson was the first to suggest dunder as a speech shorthand for  double underscores (__) in a reply to a query from Pat Notz. Ned  Batchelder later stressed the need for a way of pronouncing __:

An  awkward thing about programming in  Python : there are lots of double  underscores. [snip] My problem with the double underscore is that it's  hard to say. How do you pronounce init__? "underscore underscore  init underscore underscore"? "under under init under under"? Just plain  "init" seems to leave out something important. I have a solution:  double underscore should be pronounced "dunder". So __init is "dunder init dunder", or just "dunder init".

  • 最初 是为了 说起来省事
  • 连读 再加 吞字 得到的

对比

  • 在发明 dunder 之前
  • __init__ 要念作 double underscore init
  • 其中的double underscore
  • 有17个字符
  • 发音是6声
  • 而dunder
  • 只有6个字符
  • 发音是2声
  • 简单多了

  • dunder 意味着 这个变量
  • 系统定义 的!
  • 能删吗?🤪

删除

del __builtins__

__builtins__

  • __builtins__ 迅速重生
  • 快得就像韭菜

  • 能把这个__builtins__覆盖了吗?

总结

  • 这次玩的 还是  下划线
位置和数量 作用
一个放后面 避免名字冲突
两个放两边 系统变量

  • 能把内建模块(builtins)
  • 覆盖掉吗??🤔
相关文章
|
22天前
|
数据采集 数据可视化 关系型数据库
基于python大数据的电影数据可视化分析系统
电影分析与可视化平台顺应电影产业数字化趋势,整合大数据处理、人工智能与Web技术,实现电影数据的采集、分析与可视化展示。平台支持票房、评分、观众行为等多维度分析,助力行业洞察与决策,同时提供互动界面,增强观众对电影文化的理解。技术上依托Python、MySQL、Flask、HTML等构建,融合数据采集与AI分析,提升电影行业的数据应用能力。
|
20天前
|
安全 大数据 程序员
Python operator模块的methodcaller:一行代码搞定对象方法调用的黑科技
`operator.methodcaller`是Python中处理对象方法调用的高效工具,替代冗长Lambda,提升代码可读性与性能。适用于数据过滤、排序、转换等场景,支持参数传递与链式调用,是函数式编程的隐藏利器。
67 4
|
27天前
|
数据采集 数据可视化 安全
基于python大数据的天气可视化分析预测系统
本研究探讨基于Python的天气预报数据可视化系统,旨在提升天气数据获取、分析与展示的效率与准确性。通过网络爬虫技术快速抓取实时天气数据,并运用数据可视化技术直观呈现天气变化趋势,为公众出行、农业生产及灾害预警提供科学支持,具有重要的现实意义与应用价值。
|
28天前
|
存储 JavaScript 关系型数据库
基于python+vue的居家办公系统的设计与实现
本居家办公系统基于B/S架构,采用Python语言及Django框架开发,结合MySQL数据库和Vue.js前端技术,实现家具销售库存的科学化、规范化管理。系统旨在提升办公效率,降低数据错误率,优化信息管理流程,适应多行业信息化发展需求,具有良好的扩展性与实用性。
|
22天前
|
JavaScript 关系型数据库 MySQL
基于python+vue的贫困生资助系统
本文介绍了餐厅点餐系统的开发环境与核心技术,涵盖Python语言、MySQL数据库、Django框架及Vue.js前端技术,详细说明了各项技术的应用与优势,助力系统高效开发与稳定运行。
|
22天前
|
Python
基于python的餐厅点餐系统
本课题研究开发餐厅点餐系统,旨在提升餐厅信息处理效率与管理水平。通过计算机技术规范点餐流程,加快信息处理速度,助力管理人员高效运作。系统包含功能结构图与具体实现模块,全面展示系统设计与运行逻辑。
|
29天前
|
JavaScript 关系型数据库 MySQL
基于python的医院智慧门诊系统研究
本系统基于Python和Django框架,结合MySQL、Vue等技术,构建功能全面、易用性强的医院智慧门诊平台。系统涵盖患者与医务人员信息管理、在线挂号、智能导诊、电子病历、远程医疗等功能,优化就医流程,提升医疗效率与服务质量,助力医疗服务数字化转型。
基于python的医院智慧门诊系统研究
|
14天前
|
存储 数据库 开发者
Python SQLite模块:轻量级数据库的实战指南
本文深入讲解Python内置sqlite3模块的实战应用,涵盖数据库连接、CRUD操作、事务管理、性能优化及高级特性,结合完整案例,助你快速掌握SQLite在小型项目中的高效使用,是Python开发者必备的轻量级数据库指南。
135 0
|
11月前
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
324 62
|
11月前
|
Python
Python的模块和包
总之,模块和包是 Python 编程中非常重要的概念,掌握它们可以帮助我们更好地组织和管理代码,提高开发效率和代码质量
224 61

推荐镜像

更多