鱼C论坛

 找回密码
 立即注册
查看: 2553|回复: 5

[技术交流] 函数,与BIF函数

[复制链接]
发表于 2022-4-10 17:58:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
如果对一个BIF函数进行了重新定义。。。比如说:
def print(a,b):
        return(a + b)

那之后如果要取消掉整个函数,恢复print()最初的功能需要怎么办啊。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-4-10 18:30:24 | 显示全部楼层
本帖最后由 傻眼貓咪 于 2022-4-10 18:31 编辑

  1. def print(a, b):
  2.     return a + b

  3. del print

  4. print("Hello World!")
复制代码

建议不要这样写,学习编程第一课应该都会说明不要用内建关键字或保留字命名(这是很重要)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-10 18:45:32 | 显示全部楼层
傻眼貓咪 发表于 2022-4-10 18:30
建议不要这样写,学习编程第一课应该都会说明不要用内建关键字或保留字命名(这是很重要)

啊哈哈哈哈  函数的删除是只有del 还有其他方法么。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-10 18:54:52 | 显示全部楼层
Victor0321 发表于 2022-4-10 18:45
啊哈哈哈哈  函数的删除是只有del 还有其他方法么。。

具体看你想要什么?如题,del 最适合。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-11 13:43:15 | 显示全部楼层
如果非得不用del()的话,你也可以用一个非常损的方法:
  1. >>> def print(a):
  2.         return a

  3. >>>
复制代码
虽然这一招 以 毒 攻 毒 的方法基本还原了print()的功能,但还是建议直接删除函数,否则及有可能导致代码混乱
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-11 13:47:36 | 显示全部楼层
其实呢,我个人认为,大多数BIF都是用函数或者class()类编写成的
打开print帮助,你可以发现:
  1. >>> help(print)
  2. Help on built-in function print in module builtins:

  3. print(...)
  4.     print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
  5.    
  6.     Prints the values to a stream, or to sys.stdout by default.
  7.     Optional keyword arguments:
  8.     file:  a file-like object (stream); defaults to the current sys.stdout.
  9.     sep:   string inserted between values, default a space.
  10.     end:   string appended after the last value, default a newline.
  11.     flush: whether to forcibly flush the stream.

  12. >>>
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-29 06:49

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表