Python There are some magical ways to do it , They are always surrounded by double underscores , They are object-oriented Of Python Everything . They are special ways to add magic to your classes , If your object implements ( heavy load ) A magic method , Then this method will be automatically used in special cases Python The call .
Definition object is len() The behavior of a function call .
self Represents the object itself .
It must be an integer , Otherwise, an exception will be thrown .
class MyTest(object):
def __init__(self):
self.name = 'ab'
self.age = 22
def __len__(self):
# len() Functions generally return objects ( Sequence ) Length or number of elements
return len(self.__dict__)
sample = MyTest()
print(len(sample))
If a class behaves like a list, How many elements do you want to get , You have to use it. len() function . Must let len() The function works normally , Class must provide a special method __len__(), It returns the number of elements . Example
class Students(object):
def __init__(self, *args):
self.names = args
def __len__(self):
return len(self.names)
s = Students('a', 'b', 'c')
print(len(s))
1. usage :len(filename),filename.__len__().
2. return :len() Returns the length of the passed in parameter ; If there is no right __len__() Custom return value of , The length of the input parameter is returned , Otherwise, the custom object will be returned .
3. difference :len() Is the function ,__len__() Is the method , If there is no right __len__() Custom return value of , The length of the input parameter is returned .
here A Format conversion B For
正則作為處理字符串的一個實用工具,在Python中經常會用到