mirror of
https://github.com/micropython/micropython.git
synced 2026-01-07 04:30:24 +01:00
py/modbuiltins: Fix getattr to work with class raising AttributeError.
Fixes issue #6089.
This commit is contained in:
@@ -16,3 +16,15 @@ print(getattr(a, "meth")(5))
|
||||
print(getattr(a, "_none_such", 123))
|
||||
print(getattr(list, "foo", 456))
|
||||
print(getattr(a, "va" + "r2"))
|
||||
|
||||
# test a class that defines __getattr__ and may raise AttributeError
|
||||
class B:
|
||||
def __getattr__(self, attr):
|
||||
if attr == "a":
|
||||
return attr
|
||||
else:
|
||||
raise AttributeError
|
||||
b = B()
|
||||
print(getattr(b, "a"))
|
||||
print(getattr(b, "a", "default"))
|
||||
print(getattr(b, "b", "default"))
|
||||
|
||||
Reference in New Issue
Block a user