【Python“高级”技术】伪造文件对象
本帖最后由 无符号整形 于 2018-8-25 19:30 编辑>>> class fb0:
def readable(self):
return True
def writable(self):
return True
def seekable(self):
return True
def read(self):
return b'fishc\nfishC'
def close(self):
self.closed = True
def tell(self):
pass
closed = False
>>> a = open('2n.py')
>>> type(a)(fb0)
<_io.TextIOWrapper encoding='cp936'>#正宗的文件对象
>>> type(a)(fb0).read()
'fishc
fishC'
>>>
**** Hidden Message ***** @小甲鱼 @~风介~ @冬雪雪冬 @新手·ing @claws0n 沙发 claws0n 发表于 2018-8-25 19:37
沙发
不~板凳~{:5_109:} {:10_245: {:5_109:} 不明觉厉 x2 1 小甲鱼 发表于 2018-8-25 22:46
不明觉厉 x2
就是模仿一个缓冲区,然后用缓冲区实例化一个文件句柄,然后得到的文件句柄就可以当文件写/读咯~{:10_282:} ssssssssssssssssssssssssssssssssssssss {:10_277:}这年头发个评论真难,还有被说灌水嫌疑{:10_334:} {:10_277:} 类名的第一个字母不应该大写吗? 革命年 发表于 2020-7-27 20:58
类名的第一个字母不应该大写吗?
不必,
可以小写,并非语法规定必须要大写
比如 int() 和 str() 等,都是对象,但首字母并没有大写
页:
[1]