Допустимые символы в имени класса Python

Я динамически создаю классы Python и знаю, что не все символы допустимы в этом контексте.

Есть ли в библиотеке классов метод, который можно использовать для очистки случайной текстовой строки, чтобы использовать ее в качестве имени класса? Либо это, либо список разрешенных персонажей будет хорошим подспорьем.


Дополнение относительно конфликтов с именами идентификаторов: Как @Ignacio указал в ответе ниже, любой символ, который допустим в качестве идентификатора, является допустимым символом в имени класса. И вы даже можете без проблем использовать зарезервированное словов качестве имени класса. Но есть одна загвоздка. Если вы используете зарезервированное слово, вы не сможете сделать класс доступным, как другие (не динамически созданные) классы (например, выполнив globals()[my_class.__name__] = my_class). В таком случае зарезервированное слово всегда будет иметь приоритет.

28
задан Filipe Correia 12 April 2012 в 09:45
поделиться