We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents 8b692af + a4ed3c6 commit 7b3a853Copy full SHA for 7b3a853
Week05/emails_emre_ozcan.py
@@ -0,0 +1,23 @@
1
+
2
+class Emails(list):
3
+ def __init__(self, addresses: list):
4
+ for i, address in enumerate(addresses):
5
+ if not self.validate(address):
6
+ raise ValueError(f"invalid address {address!r} at index {i}")
7
+ super().__init__(set(addresses))
8
9
+ def __repr__(self):
10
+ return f"{self.__class__.__name__}({super().__repr__()})"
11
12
+ def __str__(self):
13
+ return super().__str__()
14
15
+ @property
16
+ def data(self):
17
+ return self
18
19
+ @staticmethod
20
+ def validate(address: str) -> bool:
21
+ if not isinstance(address, str):
22
+ raise ValueError("address must be a str")
23
+ return "@" in address and "." in address
0 commit comments