在windows中:双击运行Python

发布时间:2019-09-18 07:24:14编辑:auto阅读(2729)

    在windows中:双击运行Python程序、后台运行Python程序

    一、安装Python解释器的windows环境,如果双击运行*.py的文件,会闪退。怎样避免闪退呢?

    1、bat启动

    start_show.bat  中

    1
    python main.py

      

     

    2、升级版:vbs后台运行(×××面)

    start_hidden.vbs  中

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

      

     

    二、windows中怎么快捷杀掉Python程序?

    答:bat杀

    stop_all_python.bat  中

    1
    taskkill /IM python.exe /F

      

    附录:

    main.py 中

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    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、带界面双击启动

    双击start_show.bat 

    会出现cmd窗口,同时会产生日志文件夹

     

    2、不带界面后台运行程序

    双击start_hidden.vbs

    进程会增加一个python.exe进程,增加的python.exe进程为后台启动的,可以通过日志查看

     

    3、杀死所有Python.exe进程

    双击stop_all_python.bat

    所有的Python进程都消失了,第1部中产生的cmd窗口也消失了。


关键字