|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- # 该模块用于让 Python 支持常量操作
- class Const:
- def __setattr__(self, name, value):
- if name in self.__dict__:
- raise TypeError('常量无法改变!')
-
- if not name.isupper():
- raise TypeError('常量名必须由大写字母组成!')
- self.__dict__[name] = value
- import sys
- sys.modules[__name__] = Const()
复制代码
- # const 模块就是这道题要求我们自己写的
- # const 模块用于让 Python 支持常量操作
- import const
- const.NAME = "FishC"
- print(const.NAME)
- try:
- # 尝试修改常量
- const.NAME = "FishC.com"
- except TypeError as Err:
- print(Err)
- try:
- # 变量名需要大写
- const.name = "FishC"
- except TypeError as Err:
- print(Err)
复制代码
- '''
- sys.modules 是一个字典,它包含了从 Python 开始运行起,被导入的所有模块。键就是模块名,值就是模块对象。
- '''
- import sys
- sys.modules[__name__] = A()
复制代码
这段代码最后两句的作用是将 模块const 的类型变为const.Const()
有没有更好的解释。。
是将模块对象变成Const()吗
|
|