Найти - Пользователи
Полная версия: Консоль: а.как избавиться б.как сохранять консольные логи?
Начало » Python для новичков » Консоль: а.как избавиться б.как сохранять консольные логи?
1 2 3 4 5
newpy
при запуске программы синее окно выскакивает и закрывается..
1) можно ли все сообщения программы перенаправить в файл? сейчас я извращаюсь вставлением в конец команды инпут.
2) а как подавлять появление самого этого окна? раз много плагинов написанных на питоне и они никакие окна ны выкидывают значит есть такая возможность..
py.user.next
Надо поставить линукс. Там нет таких проблем. Там просто берёшь и программируешь, а система тебе никак не мешает. В винде постоянно будут проблемы, сначала с консолью, потом с кодировками, потом с файловыми путями. А потом она вообще обновится и слетит.

А по проблеме:
Ты должен создать ярлык на cmd.exe, удалить у него в свойствах рабочий каталог (там system32) и поместить этот ярлык в папку, где ты занимаешься. Тогда он будет открывать в этой папке. И когда ты так откроешь его, ты сможешь запустить там python script.py , который выполнится, но при этом окно останется.

Понимаешь, вся эта хрень, это всё только для винды надо. Следующий вопрос у тебя будет “а как выводить русский текст в консоль?”, потому что там консоль использует кодировку из прошлого века.
doza_and
Вы описали как окно оставить а не как убрать. Правильно замечено это особенности ОС и то как вы запускаете скрипт. Переименуйте скрипт в *.pyw может и поможет если запускаете тыкая мышкой.
ZerG
А что за программа и что за окно? Подробнее можно?
py.user.next
doza_and
Вы описали как окно оставить а не как убрать.
Вот он пишет
newpy
сейчас я извращаюсь вставлением в конец команды инпут
Вот эта фраза значит, что ему надо оставить окно. А если оставить нельзя, то хотя бы узнать, что там выводится через перенаправление в файл. Это распространённая проблема, в винде 99% так начинают изучение питона. Первый вопрос “как оставить окно?”. (Раньше первый вопрос был “как запустить скрипт? пишет программа не найдена”. Но сейчас уже появился автоматический установщик, который записывает путь к питону в PATH.)

А .pyw используется для tkinter'а, а он ещё только в консоли сидит. Когда делаешь расширение .pyw, такой файл запускается другой программой - pythonw. А эта программа не предназначена для консоли, потому что у ней все стандартные потоки закрываются. И если ты пишешь в консоль, а скрипт запускаешь через pythonw, то данные пропадают.
ZerG
А если запускать скрипт не двойным кликом по файлу а сразу из cmd типа
python /path/script.py
py.user.next
ZerG
а сразу из cmd типа
python /path/script.py
Это надо будет вот этот path (причём от самого диска C) писать каждый раз для каждого скрипта. А если скрипт отлаживается, то запускается он десятки раз. А если у тебя сто скриптов, то они могут лежать по всему диску. Ты просто всё не запомнишь или же замучаешься набирать (а скорее всего будет и то и другое вместе взятое). Когда у тебя скрипт готов, ты просто на него ярлык делаешь (даже с аргументами) и добавляешь этот ярлык куда надо.
ZerG
С какой такой радости?
В переменную PATH виндовую прописуем путь к питону и работает так же как и в линуксе и запускать из любого места можно включая всякие там PIP и прочие плюшки.
py.user.next
ZerG
В переменную PATH виндовую прописуем путь к питону
А при чём тут путь к питону? Ты не понимаешь, что скрипты могут лежать вообще где угодно? Речь-то идёт про путь к скрипту, а скрипт может лежать в папке питона, а может не лежать в папке питона. В папку питона кладутся обычно скрипты, имеющие к нему отношение.
ZerG
Ты не понимаешь что я говор о диаметраьно противоположном?
Ты как скрипты на линуксе у себя запускаешь?
Предположим ты находишься у себя в домашней директории
тогда пишешь
python script.py
хотя по обсолютному патчу будет python /home/username/script.py

Находясь в хомяке ты же не можешь запустить скрипт python new.py который у тебя лежит в /home/username/new/new.py

тебе так же надо будет писать path как и на винде.
Это надо будет вот этот path (причём от самого диска C) писать каждый раз для каждого скрипта.
Точно так же как и в линуксе в винде не надо писать патч от начала диска ц!
и если в CMD ты находишься в домашнем каталоге пользователя то точно так же можно запускать скрипт на питоне python script.py если он в корне или
python Downloads\new.py если он у тебя в загрузках;
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB