首页 新闻 会员 周边
1
回答数

回答被采纳 字节码里面都是LOAD_CONST,没看到STORE_CONST

常量表只读,因此字节码只有“加载常量”指令,没有“存储常量”指令。 STORE_NAME 与常量无关,它把 变量名 → 值 绑定写入 当前作用域的名字表(locals/globals),而不是向常量表
1
回答数

回答被采纳 编译过程的“递归”本质是按代码块层级逐步深入处理

模块代码块(开始编译) ├─ 解析模块级语句(如x=10,直接生成字节码) ├─ 遇到class MyClass:(生成类code object外壳,暂不处理类体) │ └─ 类代码块(搁置,等待模块
1
回答数

回答被采纳 代码对象包含了执行所需的全部信息(字节码、常量、变量名等),是 Python 代码编译后的最终产物,也是解释器执行代码的直接依据

from weakref import WeakKeyDictionary class Score(): """ score should in [0,100] """ def __init__(se
1
回答数

回答被采纳 __code__是函数对象,和compile生成函数对象区别

__code__仅仅是函数和方法的代码对象 相同点:都是代码对象
1
回答数

回答被采纳 为什么反编译得字节码没有看不到类中这行指令?

from weakref import WeakKeyDictionary class Score(): """ score should in [0,100] """ def __init__(se
1
回答数

回答被采纳 WeakKeyDictionary 与普通字典的区别

键必须是可哈希对象:与普通字典一样,键必须是可哈希的,键必须是可哈希的什么意思,可哈希就可以当键?普通字典形成对比,普通字典对其键保持强引用,会阻止键对象被垃圾回收,能举个例子比较下,弱引用和强引用直
1
回答数

回答被采纳 多个文件对象,如何交叉打印文件和正常打印文件

多个文件对象,如何交叉打印文件和正常打印文件
1
回答数

回答被采纳 字典为什么称为对象

为什么字典被称为对象:Python 的万物皆对象哲学
1
回答数

回答被采纳 with在遍历上面多个文件对象,是最少文件行数的文件读完自动关闭文件对象吗

with在遍历上面多个文件对象,用zip,或者itertools.zip_longest(),也是等最少文件行数读完自动关闭文件对象吗
1
回答数

回答被采纳 遍历多个文件不打印内容?

with open('a.file') as f1, open('b.file') as f2: for pair in f1, f2: print(pair) 报<io.TextIOWrapper
1
回答数

回答被采纳 super()作用?

help on class super in module builtins:在内置模块 builtins 里,关于 class super 的帮助信息”
1
回答数

回答被采纳 所有函数对象绑定了实例对象就变成方法对象?

所有函数对象绑定了实例对象就变成方法对象?是的。
1
回答数

回答被采纳 对象的__dict__是描述符吗

对象的__dict__是描述符吗,我记得描述符是这样用的: class Descriptor(): def get(self, instance, owner): print("self: %s\ni
1
回答数

回答被采纳 Parent p = new GrandChild(); 和GrandChild p = new GrandChild(); /l 区别

Parent p = new GrandChild(); 和GrandChild p = new GrandChild(); /l 区别,深度分析
1
回答数

回答被采纳 super(class,self/cls)不仅仅只能用self

可以填 cls,但要用 类方法 或 静态方法 的场景,写法不同 类方法(@classmethod) Python 复制 class Parent: @classmethod def info(cls)
1
回答数

回答被采纳 super():它不一定总是引用父类属性,python和java有啥区别?

super() 的实际行为由 MRO(Method Resolution Order) 决定,而非简单的父类关系。MRO 是 Python 使用 C3 线性化算法确定的类继承顺序。
1
回答数

回答被采纳 类作为装饰器时

工作原理基于 Python 的两个关键机制: 类的实例化过程(init) 实例的可调用性(call)
1
回答数

回答被采纳 类装饰器怎么不求和

class Employee: def __init__(self,func): self.func = func def __call__(self,*args,**kwargs): self.co
1
回答数

回答被采纳 self.__wrapped__作用?

self.wrapped = func # 关键2:显式保存原函数 这是什么?内置函数__wrapped __没见过,和装饰器wraps()有什么关系,我记得有from functools impor
1
回答数

回答被采纳 types.MethodType(func, cls)行为感觉和装饰器@classmethod很像啊

# 注意外部函数上加了self参数 def func(self, age): #这里需要加参数吗 print(age) class cls: pass >>> c = cls >>> import t
1
回答数

回答被采纳 运算符重载报错1

class MyList: def __getitem__(self, index): return self.data[index] # 自定义下标读取逻辑 def __setitem__(self
1
回答数

回答被采纳 运算符重载为什么不叫运算符重写,重载是什么意思,感觉好拗口,__str__包含在内吗,这个感觉不像运算符

运算符重载为什么不叫运算符重写,重载是什么意思,感觉好拗口,__str__包含在内吗,这个感觉不像运算符
1
回答数

回答被采纳 python用is判断,底层是比较什么的

python用is判断,底层是比较什么的
1
回答数

回答被采纳 打印函数字节码内容报错

TypeError: 'function' object is not subscriptable class Employee: __job = "industry" def m1(self): p
1
回答数

回答被采纳 .py程序编译为PyCodeObject对象

一个Code Block生成一个PyCodeObject,进入一个名字空间成为进入一个Code Block。如下.py文件编译完成后会生成三个PyCodeObject,一个对应整个.py文件一个对应C