Python custom modify the add method All In One
Python 改写
__add__
类方法
"""
# class Juice:
# def __init__(self, name, capacity):
# self.name = name
# self.capacity = capacity
# def __str__(self):
# return (self.name + ' ('+str(self.capacity)+'L)')
# # 改写 add
# def __add__(self, other):
# names = Juice(self.name) + '&' + Juice(other.name)
# capacity = ' (' + str(Juice(self.capacity + Juice(other.capacity)) + 'L)'
# return Juice(names + capacity)
# # return f"{self.name}&{other.name}({self.capacity + other.capacity}L)"
# class Juice:
# def __init__(self, name, capacity):
# self.name = name
# self.capacity = capacity
# def __str__(self):
# return (self.name + ' ('+str(self.capacity)+'L)')
# # 改写 add
# def __add__(self, other):
# return (Juice(self.name + '&' + other.name + ' (' + str(self.capacity + other.capacity) + 'L)'))
# # return f"{self.name}&{other.name}({self.capacity + other.capacity}L)"
https://www.sololearn.com/learning/eom-project/1073/357
https://github.com/xgqfrms/Python/blob/gh-pages/python3.x/juice-maker.py
"""
??? Python def function with __init__
❌
MMP 纯属误导呀! --init--
def concatenate(*args):
# *args
--init--
s = ""
l = len(list(args))
for arg in args:
s += (arg + '-')
print(concatenate("I", "love", "Python", "!"))
solution
def concatenate(*args):
# *args
s = ""
for arg in args:
s += (arg + '-')
l = len(s)
return s[0:l - 1]
# return s.slice(0, l - 1)
print(concatenate("I", "love", "Python", "!"))
# https://www.sololearn.com/learning/eom-project/1073/358
refs
https://www.codingem.com/python-add-method/
https://stackoverflow.com/questions/46885618/using-add-operator-with-multiple-arguments-in-python
https://stackoverflow.com/questions/40770632/typeerror-unsupported-operand-types-for
©xgqfrms 2012-2020
www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!
原创文章,版权所有©️xgqfrms, 禁止转载
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/281363.html