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'
"""
總結
以上是生活随笔為你收集整理的python设计自定义函数_我可以为内置Python类型添加自定义方法/属性吗?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 做网站和做系统
- 下一篇: js小数运算出现多为小数问题_js 数字