900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > python设计自定义函数_我可以为内置Python类型添加自定义方法/属性吗?

python设计自定义函数_我可以为内置Python类型添加自定义方法/属性吗?

时间:2021-07-04 01:54:54

相关推荐

python设计自定义函数_我可以为内置Python类型添加自定义方法/属性吗?

您无法直接将方法添加到原始类型。但是,您可以对类型进行子类化,然后将其替换为内置/全局命名空间,从而实现所需的大部分效果。不幸的是,由文字语法创建的对象将继续属于vanilla类型,并且不会有新的方法/属性。

这是它的样子

# Built-in namespace

import __builtin__

# Extended subclass

class mystr(str):

def first_last(self):

if self:

return self[0] + self[-1]

else:

return ''

# Substitute the original str with the subclass on the built-in namespace

__builtin__.str = mystr

print str(1234).first_last()

print str(0).first_last()

print str('').first_last()

print '0'.first_last()

output = """

14

00

Traceback (most recent call last):

File "strp.py", line 16, in

print '0'.first_last()

AttributeError: 'str' object has no attribute 'first_last'

"""

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。