要實現自定義類型轉換,你可以重寫自定義類型的構造函數,以便接受一個字符串參數并將其轉換為對象的屬性。例如,假設你有一個自定義的Person類,你可以添加一個從字符串到Person對象的構造函數,如下所示:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
@classmethod
def from_string(cls, string):
name, age = string.split(',')
return cls(name, int(age))
# 使用自定義類型轉換
person_str = "Alice,30"
person_obj = Person.from_string(person_str)
print(person_obj.name) # 輸出: Alice
print(person_obj.age) # 輸出: 30
在上面的示例中,我們定義了一個靜態方法from_string
,該方法接受一個字符串參數,并根據逗號分隔將其分割為name和age屬性。然后,我們將這些屬性傳遞給Person類的構造函數,并返回新創建的Person對象。
通過重寫類的構造函數或添加靜態方法,你可以自定義類型轉換并根據需要將字符串轉換為對象。