builtin_setattr.py 436 B

12345678910111213141516171819202122232425
  1. class A:
  2. var = 132
  3. def __init__(self):
  4. self.var2 = 34
  5. a = A()
  6. setattr(a, "var", 123)
  7. setattr(a, "var2", 56)
  8. print(a.var)
  9. print(a.var2)
  10. try:
  11. setattr(a, b'var3', 1)
  12. except TypeError:
  13. print('TypeError')
  14. # try setattr on a built-in function
  15. try:
  16. setattr(int, 'to_bytes', 1)
  17. except (AttributeError, TypeError):
  18. # uPy raises AttributeError, CPython raises TypeError
  19. print('AttributeError/TypeError')