055_python编程_容易出现的问题_函数名的重新赋值_print_int0 播放 · 0 赞同视频
python编程_容易出现的问题_函数名的重新赋值_print_int 回忆上次内容
-
上次 了解了
-
关键字列表
-
keywords list
添加图片注释,不超过 140 字(可选)
-
关键字 不能做 标识符
-
除了 关键字(keywords)之外
-
还有啥 不适合 做标识符 吗?🤔
三问
添加图片注释,不超过 140 字(可选)
-
试试这个
print print print = 1 print
-
print 本是 内建的函数
-
重新赋值后
-
成为1了
添加图片注释,不超过 140 字(可选)
-
还能输出吗?
尝试输出 print("hello")
-
不能输出了
-
整形数字 不能被调用
添加图片注释,不超过 140 字(可选)
-
为啥会这样呢?
错位
-
相当于
-
把整形数字
-
当成 函数来调用了
1("hello")
-
把1 直接当做函数来 调用
-
那哪儿成啊?
添加图片注释,不超过 140 字(可选)
-
除了 函数名
-
还有啥 最好别当 变量名 吗?
常见错误
-
int 是 整数类
-
可以完成 类型转化
b = int("6") c = int(7.1)
-
int类型
-
能用来转化变量类型
添加图片注释,不超过 140 字(可选)
-
int 可以 被声明成 变量吗?
重新赋值后 int = 5 a = int(6)
-
将 5 赋给 变量 int
添加图片注释,不超过 140 字(可选)
-
int 一旦被 重新 赋值
-
就 不能 完成类型转化 了
-
和 print 一样
观察
-
重启 游乐场
-
观察 类型 变化
添加图片注释,不超过 140 字(可选)
-
这个赋值过程
-
从 类型(type)
-
到 整型(int)
-
模块名 呢?
-
也能 这么乱赋值吗?👹
赋值 import os os locals()
-
引入os
-
本地就有了
添加图片注释,不超过 140 字(可选)
覆盖 os = 1 os locals()
-
覆盖之后
-
os就不再是
-
导入的 那个模块了
添加图片注释,不超过 140 字(可选)
-
那 删了 之后
-
还能 恢复 吗?
max
-
max 也是
-
内建的函数
-
builtin-function
-
和 print一样
添加图片注释,不超过 140 字(可选)
-
将 1 赋给 max 之后
-
再调用 max
max = 1 max(1, 2)
-
TypeError
-
max 不再是 内建的函数
-
而是整数 无法调用了
添加图片注释,不超过 140 字(可选)
-
这max 能 在本地 看到 吗?
locals locals()
-
max 此时
-
是一个 整形变量名
-
不是 函数名
添加图片注释,不超过 140 字(可选)
-
那我 要是
-
把 max 这个变量
-
删了呢?
删除max del max
-
在本地
-
删除 max 变量
添加图片注释,不超过 140 字(可选)
-
本地变量 max 消失
-
__builtins__.max 从新被识别为
-
还是 内建函数
-
builtins-function
-
就恢复了!😄
-
去总结吧!
总结
-
这次 了解到
-
已有的函数名、类名、模块名
-
不适合 覆盖了 赋新值
-
会 失去原有功能
-
比如 max
添加图片注释,不超过 140 字(可选)
-
如果我 就想
-
让 max 当 变量名 表示 最大值
-
想让 max函数 可以继续被调用
-
又该 怎么 做呢?🤔