2016-12-14 | Paul Boddie | raw annotate files changeset graph | Added a UTF-8 character counting native function to support the __len__ method on Unicode objects, introducing a bytelength method on strings so that byte-level operations, such as conversion between encodings, can still work with Unicode objects (since __len__ returning characters would be inappropriate for such purposes). |
1 a = 4 2 3 def f(x): 4 5 # Test function initialisation (f.$l0). 6 7 def g(y, x=x): 8 9 # Test function initialisation (f.$l0.$l0). 10 11 def h(a, z, x=x, y=y): 12 return x, y, z, a # parameter a overrides global scope 13 14 return h 15 16 return g 17 18 fn = f(1) 19 print fn # __main__.f.$l0 20 print fn(2) # __main__.f.$l0.$l0 21 print fn(2)(5, 3) # (1, 2, 3, 5) 22 print fn(2)(5, 3, 6) # (6, 2, 3, 5) 23 print fn(2)(5, 3, 6, 7) # (6, 7, 3, 5)