I'm using built-in isidentifier() function to find Unicode chars allowed for variable names (I know about xid_start and xid_continue chars, don't need explanation on that). The following program has certain inconsistency with it's results on different systems. I'm very confused and interested about the reasoning.
chars = []
for char in range(0x110000):
char = chr(char)
if char.isidentifier() or ('a' + char).isidentifier():
chars += [char]
print(len(chars))
Program results running in PyCharm gives me 134415, but running it on repl.it gives me 128770. My python version is 3.9.7, while repl's is 3.8.12. Everything I was able to find was this isidentifier() documentation, which gives a hint at PEP 3131 standard which is used in Python 3. But both I and repl.it are using same major python version, it's just minor version difference. Looking for function changelog also gives no results. Hope you will be able to help me resolve this issue!