Использование регулярных выражений и Linq:
List<string> groups = (from Match m in Regex.Matches(str, @"\d{4}")
select m.Value).ToList();
Я считаю, что это более читаемо, но это всего лишь личное мнение. Он также может быть однострочным:).
В настоящее время доступна версия 0.11.1. Вы можете получить список тестов, не выполняя их, следующим образом:
nosetests -v --collect-only
Скоро будет: новое - собирает переключатель, который производит это поведение, был demo'd в PyCon на прошлой неделе. Это должно быть на соединительной линии "скоро" и будет в этих 0,11 выпусках.
Список http://groups.google.com/group/nose-users является большим ресурсом для вопросов о носе.
Я рекомендую использовать:
nosetests -vv --collect-only
Хотя опция -vv
не описана в man nosetests
, в "An Extended Introduction to the nose Unit Testing Framework" говорится, что:
Использование флага -vv дает вам подробный вывод алгоритма обнаружения тестов в nose. Это покажет вам, ищет ли nose вообще в правильном месте (местах) ваши тесты.
Опция -vv
может сэкономить время при попытке определить, почему nosetests находит только некоторые из ваших тестов. (В моем случае nosetests пропустил некоторые тесты, потому что скрипты .py
были исполняемыми.)
В итоге, опция -vv
невероятно удобна, и я почти всегда использую ее вместо опции -v
.