在windows中:雙擊運行Python程序、後臺運行Python程序

在windows中:雙擊運行Python程序、後臺運行Python程序python

安裝Python解釋器的windows環境,若是雙擊運行*.py的文件,會閃退。怎樣避免閃退呢?windows

 咱們用python的日誌輸出程序來舉例說明:日誌

main.py中orm

import os
import logging
import time
 
# 若是日誌文件夾不存在,則建立
log_dir = "log"  # 日誌存放文件夾名稱
log_path = os.getcwd() + os.sep + log_dir
if not os.path.isdir(log_path):
    os.makedirs(log_path)
 
# 設置logging
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
main_log_handler = logging.FileHandler(
    log_dir + "/dd_%s.log" % time.strftime("%Y-%m-%d_%H-%M-%S", time.localtime(time.time())), mode="w+",
    encoding="utf-8")
main_log_handler.setLevel(logging.DEBUG)
formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")
main_log_handler.setFormatter(formatter)
logger.addHandler(main_log_handler)
 
# 控制檯打印輸出日誌
console = logging.StreamHandler()  # 定義一個StreamHandler,將INFO級別或更高的日誌信息打印到標準錯誤,並將其添加到當前的日誌處理對象
console.setLevel(logging.INFO)  # 設置要打印日誌的等級,低於這一等級,不會打印
formatter = logging.Formatter("%(asctime)s - %(levelname)s: %(message)s")
console.setFormatter(formatter)
logging.getLogger('').addHandler(console)
 
while True:
    time_stamp = time.time()
    # print("時間戳",time_stamp)
    logger.info("時間戳 %s" % time_stamp)
 
    sec = 3
    logger.info("睡眠 %s 秒" % sec)
    time.sleep(sec)

 

1、雙擊運行python的具體實現對象

一、bat啓動blog

start_show.bat  中(.bat文件 必須放在main.py的同一目錄下)進程

python main.py

  

 

二、升級版:vbs後臺運行(無界面)ip

start_hidden.vbs  中(.vbs  文件必須放在main.py的同一目錄下,且必須有 .bat 文件同在)utf-8

Set ws = CreateObject("Wscript.Shell") 
ws.run "cmd /c start_show.bat",0

 

 

2、windows中怎麼快捷殺掉Python程序?get

答:bat殺

stop_all_python.bat  中 (會殺死全部的Python程序)

taskkill /IM python.exe /F

 

 

3、其餘說明:

一、帶界面雙擊啓動

雙擊start_show.bat 

會出現cmd窗口,同時會產生日誌文件夾

 

二、不帶界面後臺運行程序

雙擊start_hidden.vbs

進程會增長一個python.exe進程,增長的python.exe進程爲後臺啓動的,能夠經過日誌查看

 

三、殺死全部Python.exe進程

雙擊stop_all_python.bat

全部的Python進程都消失了,第1部中產生的cmd窗口也消失了。

 

若是有用,請給個讚唄!!!多謝。(^_^)

相關文章
相關標籤/搜索