Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 23, 2015 04:01:28

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10010
Репутация: +  857  -
Профиль   Отправить e-mail  

Трудности с обработкой аргументов командной строки

terabayt
и какая тогда разница что использовать
Ну, sys.exit() должна быть не только быстрее, по идее, но ещё она ничего не пытается вывести на экран пользователю, тогда как exit() расчитывает на экран. А вывод может использоваться в каналах.



Офлайн

#2 Апрель 23, 2015 07:40:51

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Трудности с обработкой аргументов командной строки

py.user.next
тогда как exit() расчитывает на экран
а что exit пытается вывести на экран если ее вызвать без аргументов?
sys.exit тоже выводит на экран если ей передать
sys.exit('exit')



————————————————
-*- Simple is better than complex -*-

Офлайн

#3 Апрель 23, 2015 10:37:33

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10010
Репутация: +  857  -
Профиль   Отправить e-mail  

Трудности с обработкой аргументов командной строки

terabayt
а что exit пытается вывести на экран если ее вызвать без аргументов?
Дело даже не в том, что она сейчас выводит, а в том, как её могут изменить, расчитывая на то, что люди не будут ею завершать программу.
>>> print(exit)
Use exit() or Ctrl-D (i.e. EOF) to exit
>>>
Можно так получить какой-нибудь неожиданный эффект при запуске программы в новой версии интерпретатора.

Вот здесь ещё про различия.



Отредактировано py.user.next (Апрель 23, 2015 12:02:09)

Офлайн

#4 Апрель 23, 2015 11:20:26

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Трудности с обработкой аргументов командной строки

py.user.next
Можно так получить какой-нибудь неожиданный эффект при запуске программе в новой версии интерпретатора.
ну да или же вообще уберут :)



————————————————
-*- Simple is better than complex -*-

Офлайн

#5 Апрель 23, 2015 12:05:36

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10010
Репутация: +  857  -
Профиль   Отправить e-mail  

Трудности с обработкой аргументов командной строки

terabayt
ну да или же вообще уберут :)
То, что есть exit() и quit() - это нарушает принцип единственности.

import this
There should be one– and preferably only one –obvious way to do it.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version