Python基本定制指的是使用Python内置函数和特殊方法来自定义对象的行为
▥Python
𝄐 0
python 定制类,python定制函数,python 设计,python怎么定义pi,python基础设置,python 定义
Python基本定制指的是使用Python内置函数和特殊方法来自定义对象的行为。这些特殊方法在Python中以双下划线(__)开头和结尾,常被称为魔术方法或魔法方法。
以下是一些常见的Python基本定制方法及其用途:
1. __init__: 对象初始化方法,通过此方法可以指定对象属性的默认值。
python
class MyObject:
def __init__(self, name):
self.name = name
obj = MyObject('example')
print(obj.name) # 输出: example
2. __str__ 和 __repr__: 用于输出对象的字符串表示形式,方便调试和显示。
python
class MyObject:
def __init__(self, name):
self.name = name
def __str__(self):
return f'MyObject({self.name})'
def __repr__(self):
return f'MyObject({self.name})'
obj = MyObject('example')
print(str(obj)) # 输出: MyObject(example)
print(repr(obj)) # 输出: MyObject(example)
3. __len__: 返回对象的长度,常用于容器类对象。
python
class MyList:
def __init__(self, items):
self.items = items
def __len__(self):
return len(self.items)
my_list = MyList([1, 2, 3])
print(len(my_list)) # 输出: 3
4. __getitem__ 和 __setitem__: 用于获取和设置对象的索引值,常用于序列和映射对象。
python
class MyList:
def __init__(self, items):
self.items = items
def __getitem__(self, index):
return self.items[index]
def __setitem__(self, index, value):
self.items[index] = value
my_list = MyList([1, 2, 3])
print(my_list[1]) # 输出: 2
my_list[1] = 'two'
print(my_list[1]) # 输出: two
5. __call__: 使对象可以像函数一样被调用,常用于实现可调用对象。
python
class MyCallable:
def __call__(self, x):
return x * 2
obj = MyCallable()
result = obj(3)
print(result) # 输出: 6
Python基本定制指的是使用Python内置函数和特殊方法来自定义对象的行为。这些特殊方法在Python中以双下划线(__)开头和结尾,常被称为魔术方法或魔法方法。
以下是一些常见的Python基本定制方法及其用途:
1. __init__: 对象初始化方法,通过此方法可以指定对象属性的默认值。
python
class MyObject:
def __init__(self, name):
self.name = name
obj = MyObject('example')
print(obj.name) # 输出: example
2. __str__ 和 __repr__: 用于输出对象的字符串表示形式,方便调试和显示。
python
class MyObject:
def __init__(self, name):
self.name = name
def __str__(self):
return f'MyObject({self.name})'
def __repr__(self):
return f'MyObject({self.name})'
obj = MyObject('example')
print(str(obj)) # 输出: MyObject(example)
print(repr(obj)) # 输出: MyObject(example)
3. __len__: 返回对象的长度,常用于容器类对象。
python
class MyList:
def __init__(self, items):
self.items = items
def __len__(self):
return len(self.items)
my_list = MyList([1, 2, 3])
print(len(my_list)) # 输出: 3
4. __getitem__ 和 __setitem__: 用于获取和设置对象的索引值,常用于序列和映射对象。
python
class MyList:
def __init__(self, items):
self.items = items
def __getitem__(self, index):
return self.items[index]
def __setitem__(self, index, value):
self.items[index] = value
my_list = MyList([1, 2, 3])
print(my_list[1]) # 输出: 2
my_list[1] = 'two'
print(my_list[1]) # 输出: two
5. __call__: 使对象可以像函数一样被调用,常用于实现可调用对象。
python
class MyCallable:
def __call__(self, x):
return x * 2
obj = MyCallable()
result = obj(3)
print(result) # 输出: 6
本文地址:
/show-275356.html
版权声明:除非特别标注原创,其它均来自互联网,转载时请以链接形式注明文章出处。