Jak sprawdzić, czy ciąg znaków jest prawidłowym identyfikatorem Pythona? w tym sprawdzanie słów kluczowych?

Czy ktoś wie, czy istnieje jakakolwiek wbudowana metoda Pythona, która sprawdzi, czy coś jest poprawną nazwą zmiennej Pythona, w tym sprawdzenie zastrzeżonych słów kluczowych? (tzn. coś takiego jak „in” lub „for” nie powiedzie się ...)

Jeśli to się nie uda, czy ktoś wie, gdzie mogę uzyskać listę zarezerwowanych słów kluczowych (np. Dyanamicznie z poziomu pythona, a nie kopiować i wklejać coś z dokumentów online)? Czy masz inny dobry sposób pisania własnego czeku?

Co zaskakujące, testowanie poprzez zawijanie setattr w try / except nie działa, jak coś takiego:

setattr(myObj, 'My Sweet Name!', 23)

... właściwie działa! (... i można je nawet pobrać za pomocą getattr!)

questionAnswers(4)

yourAnswerToTheQuestion