精华内容
下载资源
问答
  • 这个跟python自己的基础架构有关,python程序被设置成运行就会自动关闭,如果你代码太短,计算机运行得太快,你连运行都看到就被关闭了。 解决这个的方法其实很简单,你只需要在代码的最后一行填上一个input...

    经常有小伙伴在运行完python程序后,自动关闭了,也没法在导出来内容,遇到这样情况我们应该怎么处理呢?
    通常在python文件编辑好后就会形成一个py文件,这个也是你编辑的程序。
    在这里插入图片描述

    这个跟python自己的基础架构有关,python程序被设置成运行完后就会自动关闭,如果你代码太短,计算机运行得太快,你连运行都看不到就被关闭了。
    在这里插入图片描述
    解决这个的方法其实很简单,你只需要在代码的最后一行填上一个input()
    在这里插入图片描述

    要是想做得再好看一点,就可以像我们之前遇到很多程序会给一个提示input(“请输入任意按键退出”),多输入几次就会几次点击后退出。
    在这里插入图片描述

    这下当你运行Py文件的时候,你就能看见结果了,而且还会等你再次输入按键的时候才会推出。
    在这里插入图片描述

    相信大家浏览以上内容已经解决了吧~如需了解更多python实用知识,点击进入PyThon学习网教学中心。

    展开全文
  • 文章目录在Windows上双击运行Python程序不会自动退出的方法前言将python.exe添加到环境变量中一个Python程序例子双击运行Python程序报错双击运行Windows Command让程序停一会程序出错时打印错误信息,自动关闭窗口...

    在Windows上双击运行Python程序不会自动退出的方法

    前言

    本文描述了如何在Windows上双击运行Python程序,即使发生错误也不会自动退出的方法。

    环境和工具:

    将python.exe添加到环境变量中

    1. 使用.exe的的Python安装包来安装;
    2. 安装时勾选“Add Python to System env path”

    如果已经安装,但是漏了勾选“Add Python to System env path”,可以再次运行.exe安装包选择修复(Modify)安装,并勾选“Add Python to System env path”。

    一个Python程序例子

    一个生成文件并计算文件大小的Python程序例子:

    import os
    
    
    def file_size(file_name):
        size = os.stat(file_name).st_size
        print(f'File size of {file_name}: {size}')
    
    
    def main():
        with open('data.txt', 'w') as file:
            file.write("data file")
        file_size('data.txt')
    
    
    if __name__ == '__main__':
        main()
    
    

    将上面代码保存为test.py。

    双击运行Python程序报错

    直接在Windows上双击test.py,窗口一闪而过,并没有创建data.txt,注意看窗口报错“Invalid Syntax”。

    这是因为当前存放test.py的目录并不在Windows的PATH环境变量中。

    但是我们不可能将每一个存放Python程序的目录都添加到Windows的PATH环境变量中,这个问题可以通过运行Windows Command来解决。

    双击运行Windows Command

    1. 在test.py的目录下创建一个test.cmd;

    2. 在test.cmd中输入:

      python test.py
      
    3. 双击运行test.cmd就可以执行成功了,可以看到data.txt文件已被成功创建。

    这个时候还有一个问题,程序运行结束后,窗口就自动关闭了。因为程序运行很快,窗口一闪而过,看不清窗口上显示了什么信息。

    让程序停一会

    为了让程序执行后停一会,不要自动关闭窗口,可以在test.py的main()方法中用input语句让程序等待用户输入,这时无论用户按下哪个键程序都继续结束程序。

    import os
    
    
    def file_size(file_name):
        size = os.stat(file_name).st_size
        print(f'File size of {file_name}: {size}')
    
    
    def main():
        with open('data.txt', 'w') as file:
            file.write("data file")
        file_size('data.txt')
    
        input('Press any key to quit program.')
    
    
    if __name__ == '__main__':
        main()
    
    

    但是这时如果程序执行出错时,窗口仍然会自动关闭。

    程序出错时打印错误信息,不自动关闭窗口

    为了让程序执行出错时,不自动关闭窗口,而是打印错误信息,则需要捕捉和处理程序可能发生的错误。

    一个故意写错文件名的例子:

    import os
    
    
    def file_size(file_name):
        size = os.stat(file_name).st_size
        print(f'File size of {file_name}: {size}')
    
    
    def main():
        try:
            with open('data.txt', 'w') as file:
                file.write("data file")
            file_size('wrong.txt')
        except FileNotFoundError as error:
            print(error)
        finally:
            input('Press any key to quit program.')
    
    
    if __name__ == '__main__':
        main()
    
    

    小结

    在Windows上双击运行Python不自动退出的方法:

    1. 确保将python.exe添加到Windows系统环境变量PATH中;
    2. 新建一个Windows Command(.cmd)文件;
    3. .cmd文件中输入python xxx.py
    4. 在Python文件(.py)的main()函数最后使用input语句来让程序执行结束前,先等待用户按下任意键,才关闭窗口;
    5. 在Python文件(.py)中使用try...except...finally来捕捉可能发生的错误,使得在程序发生错误时,可以打印错误信息,而不会自动关闭窗口。
    展开全文
  • 在Windows系统上(机器A,作为客户端)用python写了一个程序,远程连接Linux服务器(机器B),并使服务器执行一条指令,代码如下: 服务器端程序: ...有试过加sys.exit(0)和quit()语句,但还是自动退出
  • python 进程超时自动退出 装饰器==**你们也可以把t1.setDaemon(True)注释掉(超时时间设长一些,执行时间短一些)执行一下看一下这样就会理解啥是守护线程**====**你们也可以把t2.join()注释掉**== 为啥写这个装饰器...

    python 进程超时自动退出 装饰器


    为啥写这个装饰器
    之前做用例测试的时候,单进程测试,发现有些用例执行时间特别长,卡死,影响下面用例的执行。刚开始在主函数内添加了超时退出,但是感觉用的不方便,虽然也能实现功能,但是主函数变得特别累赘,所以还是选择写一个装饰器。

    思路
    利用python的多线程一个线程控制主进程运行时间,时间到则利用线程os._exit()迫使主进程退出。另一个线程调用主进程函数执行脚本。

    代码

    from functools import wraps
    import time
    import os
    from threading import Thread
    
    def set_time_limit(t):
        def auto_quit(t1):
            '''此为控制进程超时退出的线程函数'''
            time.sleep(t1)
            print("time out {}".format(t1))
            os._exit(1) #此函数专门用于线程控制主进程退出,有兴趣的可以看一下和sys.exit()的区别
        def decorator(f):
            '''此函数用于传入被装饰函数f'''
            @wraps(f)
            def wrapper(*args,**kwargs):
                '''装饰器内部遵循的逻辑是:
                1.auto_quit先执行完,进程结束
                2.被修饰函数f先执行完,auto_quit函数停止执行
                3.被修饰函数执行完,下面的代码才能运行
                '''
                t1=Thread(target=auto_quit,args=(t,))  #此处的t是set_time_limit函数的形参,是auto_quit函数的实参
                t2=Thread(target=f,args=args,kwargs=kwargs)
                t1.setDaemon(True) #满足第2点
                t1.start()
                t2.start()
                t2.join() #满足第3return wrapper
        return decorator
    

    测试代码
    设置超时时间为3s,主函数执行时间为2s

    @set_time_limit(3)
    def a(t):
        time.sleep(t)
        print("execuate finished")
    
    if __name__=="__main__":
        a(2)
        print("执行完毕")
    

    执行完结果
    执行完成,auto_quit函数没有调用
    执行完结果
    测试代码
    设置超时时间为2s,主函数执行时间为3s

    @set_time_limit(2)
    def a(t):
        time.sleep(t)
        print("execuate finished")
    
    if __name__=="__main__":
        a(3)
        print("执行完毕")
    

    执行结果
    追进程超时退出
    执行结果

    你们也可以把t1.setDaemon(True)注释掉(超时时间设长一些,执行时间短一些)执行一下看一下这样就会理解啥是守护线程
    你会发现执行一直不结束,在等待auto_quit执行结束

    你们也可以把t2.join()注释掉
    会发现无论程序是否超时退出都先打印:执行完毕

    展开全文
  • 遇到这个问题很苦恼,百度上苦苦搜索,最后发现一个知乎的回答成功解决了我的问题. 右键该脚本,点击在终端中运行python就不会自动关闭Chrome浏览器了。

    遇到这个问题很苦恼,百度上苦苦搜索,最后发现一个知乎的回答成功解决了我的问题.
    在这里插入图片描述
    右键该脚本,点击在终端中运行python就不会自动关闭Chrome浏览器了。
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • python脚本退出后 应该为负值

    千次阅读 2016-09-17 14:22:46
    功能:执行到主程序末尾,解释器自动退出,但是如果需要中途退出程序,可以调用sys.exit函数,带有一个可选的整数参数返回给调用它的程序,表示你可以在主程序中捕获对sys.exit的调用。(0是正常退出,其他为异常) ...
  • 最近用 tornado 搭建了一个验证码识别的微服务,部署到CentOS7上去,比较方便的事 tornado自带web服务器,所以部署的时候只需要用python 运行即可 一、关键命令 nohup 命令:nohup python -u test.py > test.log...
  • python退出程序-python退出程序

    千次阅读 2020-11-01 13:00:24
    python退出程序的方式有两种:os._exit(),sys.exit() 1)os._exit() 直接退出 python程序,其的代码也不会继续执行。 2)sys.exit() 引发一个 systemexit异常,若没有捕获这个异常,python解释器会直接退出; ...
  • 在cmd命令行中输入quit()或exit( ),程序会自动退出python运行环境
  • 有时,我们会遇到Python程式莫名其妙地退出,也没有任何异常提示,但我们希望程式能够一直运行,即便异常终止,也能自动启动,这时我们可以写一个监视程式,来达到目的: # -*- coding: utf-8 -*- #!/usr/bin/...
  • 然而,当运行游戏时,它会出现很短的时间并立即关闭。在我在这里找到了一些关于Stackoverflow的提示,可以在游戏结束时添加输入(“按下关闭窗口”)。事实上,这确保了窗口不会立即关闭,但对于游戏来说并实用。...
  • Python程序运行结束后不关闭控制台命令 在python程序加一下代码,防止控制台自动关闭,无法看结果 raw_input("Press ")
  • Python实现简单自动升级exe程序版本并自动运行,适合Python自动化运维。一、此教程是使用bat脚本+NFS实现自动更新。(也可以使用FTP或者使用html实现自动更新)1、编写version.ini文件2、编写update.py3、修改主程序...
  • Python scrapy 判断状态码自动退出

    千次阅读 2018-11-30 22:12:29
    # 自动退出 'SPIDER_MIDDLEWARES':{ 'Test_C.middlewares.Close_spider': 20, }, # 下载超时时间 'DOWNLOAD_TIMEOUT':5, # 下载重试次数 'RETRY_TIMES':3 } def parse(self, response): print('*_'*20) ...
  • PR_SET_PDEATHSIG (since Linux 2.1.57) Set the parent process death signal of the calling process to arg2 (either a signal value in the range 1..maxsig, or 0 to clear). Thi
  • python的线程有一个类叫Timer可以,用来创建定时任务,但是它的问题是只能运行一次,如果要重复执行,则只能在任务中再调用一次timer,但这样就存在新的问题了,就是在主进程退出后能正常退出子线程。 from ...
  • 我们经常需要在后台运行一些python...所以我们写一个shell脚本来控制 python挂了之后 自动重启:shell脚本如下:非常简单:然后我们使用该shell脚本启动python程序:启动之后:我们来测试一下:在后台kill -9 杀掉py...
  • python 后台自动运行程序

    千次阅读 2020-08-12 15:43:25
    以后台方式运行程序要添加 "&": python run.py & 注意:如果使用ssh方式连接的服务器,需要使用命令:exit退出,不要直接关闭,否则会关闭对应进程。 查看所有的后台进程: ps -ef 或者: ps -aux...
  • 刚学python, py文件,双击运行后,看到结果就自动关闭了,需要加什么参数可以不要让他自动关闭吗·??问题太菜了,不要拍砖,TKS~~
  • python程序运行超过时长强制退出方式,防止程序卡死; 主要两种方式: 1、程序内部设置时长,超过退出 import datetime import time import datetime starttime = datetime.datetime.now() #long running endtime =...
  • python装饰器限制函数运行时间,超时退出

    万次阅读 多人点赞 2018-09-26 11:10:56
    python装饰器简单来说可以在改变某个函数内部实现和原来调用方式的前提下对该函数增加一些附件的功能,提供了对该函数功能的扩展。 方法一. 使用 signal 使用signal有所限制,需要在linux系统上,并且需要在...
  • 遇到chrome中的这个,注释掉就能运行了,注释代码就一直停在那不运行报错,求大神指点一下。 if(zgtisLogin==""){ sessionStorage.setItem("islogin",true); top.location.href="ChatTool://@()....
  • Py脚本运行后暂停不退出

    千次阅读 2019-06-28 06:58:52
    方法一:在脚本结束提示用户按任意键退出 import os ...方法三:在脚本结束模拟python(Command line)环境,允许用户输入python命令并执行 import code code.interact(banner = "", local = loc...
  • pycharm的并行运行 在pycharm中想要对一个程序同时多开几个运行窗口,并行的同时运行。但是会弹出下面提示: 解决方法: 步骤一:在pycharm顶部菜单栏单击Run(运行)->Edit Configurations(编辑配置...自动...
  • Python3控制台执行完后不主动退出

    千次阅读 2019-10-20 02:35:57
    如以下代码: num = int(input("请输入:")) if(num>0): if(num>55): print("大于") elif(num<...在执行完毕的瞬间,控制台窗口会立刻关闭,还没来得及看到结果就退出了 解决此问题只需...
  • python的线程有一个类叫Timer可以,用来创建定时任务,但是它的问题是只能运行一次,如果要重复执行,则只能在任务中再调用一次timer,但这样就存在新的问题了,就是在主进程退出后能正常退出子线程。from ...
  • 一、input语句 input('Press <Enter>') 在最后加上这个就好了,巧妙运用了input语句 ...time.sleep(number)#number为停顿时间,自己随便填一个,这样运行完代码以后会停顿number秒退出 ...
  • python脚本在服务器后台自动运行和停止 后台运行命令 nohup python -u test.py > test.log 2>&1 & test.py 是要运行的脚本; test.log 是运行脚本生成的日志文件; -u表示每多一条信息就实时输出到...
  • 华为 Python网络自动

    万次阅读 多人点赞 2021-02-08 12:04:47
    光棍二十年,知道情人节是什么鬼东西。还是好好学技术吧!努力、奋斗吧!为了早日走向人生巅峰,迎娶白富美!拼了 文章目录1、安装环境并导入相关模块2、创建VLAN并配置IP地址和路由协议2.1 拓扑2.2 简单配置与...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 75,092
精华内容 30,036
关键字:

python运行后不自动退出

python 订阅