Я хотел бы получить некоторый код многократного использования, чтобы правильно определить, является ли строка допустимым именем переменной в python3 (или достаточно работающего в настоящее время питона).
Например:
Если задана строка group_찇籸딥햳㸙濮ᚨ麍ڵថ
, метод, решающий эту проблему, должен вернуть True
, это можно использовать как имя переменной python.Если задано group_찇籸딥-햳㸙濮ᚨ麍ڵថ
, то должно возвращаться False
, поскольку его нельзя правильно использовать в качестве имени единственной переменной.
>>> group_찇籸딥햳㸙濮ᚨ麍ڵថ = 4
>>> group_찇籸딥-햳㸙濮ᚨ麍ڵថ = 4
File "<stdin>", line 1
SyntaxError: can't assign to operator
Я бы предпочел, чтобы решение избегало небезопасных eval
с.Ранее попытавшееся решение возвращало True
, если регулярное выражение ^[\d\W]|[^\w]
было найдено, но это кажется неполным, поскольку оно неверно идентифицирует первый приведенный выше пример как недействительный.