teil 26 lambda Funktionen.

This commit is contained in:
Olli Graf
2024-06-16 14:25:18 +02:00
parent 31915dc7d6
commit 3607e2ef69
4 changed files with 57 additions and 0 deletions

17
gettattr/name.py Normal file
View File

@@ -0,0 +1,17 @@
class Name:
def __init__(self,vorname,name):
self.vorname = vorname
self.name = name
def __getattr__(self,attr):
if attr == 'fullname':
return self.vorname + ' ' + self.name
elif attr == 'sortname':
return self.name + ',' + self.vorname
else:
raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{attr}'")

28
gettattr/testname.py Normal file
View File

@@ -0,0 +1,28 @@
import unittest
import logging
from name import Name
__LOGLEVEL__ = logging.DEBUG
logging.basicConfig( format='%(asctime)-15s [%(levelname)s] %(funcName)s: %(message)s', level=__LOGLEVEL__)
class TestName(unittest.TestCase):
def setUp(self):
logging.debug('setting up test')
self.name = Name('Homer', 'Simpson')
def test_getattr(self):
fullname = self.name.fullname
sortname = self.name.sortname
self.assertEqual('Homer Simpson', fullname)
self.assertEqual('Simpson,Homer', sortname)
if __name__ == '__main__':
logging.debug('Test startet.')
unittest.main()