1
binux 2012-10-28 22:50:43 +08:00 1
builtin类型不知道怎么搞
a = "abcd" def format(self, str): ....print ",".join(list(str)) base = type("str", [type(a), ], {}) base.format = format a = base(a) a.format("123") |
2
Brutal OP @binux 这样的话就不用这么麻烦了,直接新建一个 class 就可以了
>>> class cls: ... def __init__(self, value): ... self.value = value ... ... def format(self): ... print ','.join(self.value) ... ... ... >>> a=cls('sab') >>> a.format() s,a,b |
3
timonwong 2012-10-28 23:24:43 +08:00 1
Python的builtin类型是无法改的,因为__dict__是只读的,只有自定义类型可以。
|
4
alsotang 2012-10-29 18:11:53 +08:00
用 Ruby 的话来说,叫做 “Python 的buildin 类型无法打开。”
|