Как сохранить окно вывода сценария Python открытым?

Расширение на Roman Pekar. Если вы используете временную таблицу и хотите это сделать, вам нужно использовать tempdb следующим образом:

select
@stmt = isnull(@stmt + ', ', '') + '[' + name + ']',
@stmt1 = isnull(@stmt1 + ', ', '') + '(' + '[' + name + ']'+  ')'
from tempdb.sys.columns
where object_id = object_id('tempdb..##TempTable') and name not in ('ID')
--ID would be one of the column names you DONT want to sum.
--also notice the double pound sign. you need to declare your temp table with double pounds or it wont work
--also notice how I put brackets around name, that's because my columns weren't working because they had slashes in their names.
--the rest of the code is the same
select @stmt =
          'select Date_Packed, ' + @stmt + '' + 
          ', (select sum(S.Q) from (values ' + @stmt1 +
          ') as S(Q) where S.Q is not null) as [Total] ' +
          'from tempdb..##TempTableas T'
          print @stmt

exec sp_executesql @stmt = @stmt
--don't forget to drop it
          drop table ##TempTable
178
задан rohitmishra 16 June 2009 в 11:31
поделиться

4 ответа

У вас есть несколько вариантов:

  1. Запустить программу с уже открытого терминала. Откройте командную строку и введите:

     python myscript.py
    

    Для этого вам понадобится исполняемый файл python на вашем пути. Просто проверьте , как редактировать переменные среды в Windows, и добавьте C: \ PYTHON26 (или любой другой каталог, в который вы установили python).

    Когда программа завершится, она будет вернет вас к приглашению cmd вместо закрытия окна.

  2. Добавьте код для ожидания в конце вашего скрипта. Для Python2 добавление ...

     raw_input ()
    

    ... в конце скрипта заставляет его ждать клавиши Enter . Этот метод раздражает, потому что вам нужно изменить скрипт и не забыть удалить его, когда закончите. Особенно раздражает при тестировании чужих скриптов. Для Python3 используйте input () .

  3. Используйте редактор, который делает паузу для вас. Некоторые редакторы, подготовленные для Python, автоматически приостанавливают работу после выполнения. Другие редакторы позволяют настраивать командную строку, которую она использует для запуска вашей программы. Я считаю особенно полезным настроить его как « python -i myscript.py » при запуске. После завершения программы вы попадете в оболочку python с загруженной программной средой, так что вы можете продолжить игру с переменными и вызывать функции и методы.

144
ответ дан 23 November 2019 в 20:16
поделиться

Если Вы хотите остаться, cmd-окно открывает, AND находятся в каталоге рабочего файла, это работает в Windows 10:

cmd /k cd /d $(CURRENT_DIRECTORY) && python $(FULL_CURRENT_PATH)
0
ответ дан 23 November 2019 в 20:16
поделиться

Запустить скрипт из уже открытого окна cmd или в конце скрипта добавьте что-то вроде этого в Python 2:

 raw_input("Press enter to exit ;)")

Или в Python 3:

input("Press enter to exit ;)")
38
ответ дан 23 November 2019 в 20:16
поделиться

cmd / k - это типичный способ открыть любое консольное приложение (не только Python) с окном консоли, которое останется после закрытия приложения. Самый простой способ сделать это - нажать Win + R, набрать cmd / k , а затем перетащить нужный скрипт в диалоговое окно «Выполнить».

47
ответ дан 23 November 2019 в 20:16
поделиться