Программно определить, является ли строка допустимым именем переменной в Python - PullRequest
0 голосов
/ 03 июня 2019

Я хотел бы получить некоторый код многократного использования, чтобы правильно определить, является ли строка допустимым именем переменной в 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] было найдено, но это кажется неполным, поскольку оно неверно идентифицирует первый приведенный выше пример как недействительный.

...