Создав ответ Martijn, более простой формат для исчерпывающего списка, который я использовал:
>>> yourstring = "path/to/{self.category}/{self.name}"
>>> [x[1] for x in yourstring._formatter_parser() if x[1]]
['self.category', 'self.name']
Это функционально то же самое, гораздо проще переваривать.
Это сделано с использованием подпроцесса позвонить в сис. исполняемый файл (т. е. запустить новый процесс Python) с последующей сериализацией всех глобальных переменных и их отправкой по конвейеру. Клонирование бедняков текущего процесса. Это является причиной дополнительных ограничений , обнаруженных при использовании многопроцессорной обработки на платформе Windows.
Вы также можете быть заинтересованы в просмотре выступления Джесси Ноллера из PyCon о многопроцессорности, где он обсуждает его использование .