Хотя принятый ответ потрясающий. Я также хотел бы поделиться быстрым взломом для этой проблемы. (Это также заботится об отрицательной возрастной проблеме.)
f=lambda age: (age.isdigit() and ((int(age)>=18 and "Can vote" ) or "Cannot vote")) or \
f(raw_input("invalid input. Try again\nPlease enter your age: "))
print f(raw_input("Please enter your age: "))
P.S. Этот код предназначен для python 2.x и может быть экспортирован в 3.x путем изменения функций raw_input и печати.
В порядке:
git diff
, вы получаете много автоматизации, плюс вывод всегда будет иметь значение git apply
или git am
. Короче говоря, это намного больше удобно . git diff
вывод на patch
или обычный diff
вывод на git apply
). Он работает, хотя иногда мне приходилось редактировать вещи здесь и там, чтобы заставить его работать, что является болью. Гораздо больше удобнее просто получить git diff
, если я хочу git apply
или git am
патч. Самая большая наблюдаемая разница в общем состоит в том, что git apply
не делает частичного применения по умолчанию: вы должны добавить --reject
, чтобы заставить его действовать как по умолчанию патча. (Кроме того, все эти файлы .orig
...) git format-patch
и git am
, вы можете массово применять целую серию патчей, поддерживая сообщения о фиксации, включая информацию об авторстве и т. Д., И получать все автоматически.
git apply --reject
просто применилpatch
. Иногда высоковольтная электрическая отвертка просто кажется излишней, и я использую руку. :-) – torek 13 March 2014 в 21:29