天天看點

如何定時重新開機正在運作python程式(代碼)

一、簡介

該方法是工作中根據需求設定的一個重新開機代碼的簡易例子;當我們程式一直在運作向對方提供服務,程式長時間的運作可能會出現卡頓的現象,于是我就嘗試定時重新開機程式來解決這個問題。

二、簡單介紹下sys.executable用法

例1:用idle執行

import sys


if __name__ == '__main__':
    print(sys.executable)   #表示傳回python可執行檔案的絕對路徑,若python腳本生成是exe檔案,則列印的是exe檔案的絕對路徑。
    
#傳回結果
D:\python37\pythonw.exe
>>> 
           

例2:輕按兩下執行

import sys
import os

if __name__ == '__main__':
    print(sys.executable)  #列印exe的絕對路徑
    print(os.system('pause'))
           

#運作結果

如何定時重新開機正在運作python程式(代碼)
三、代碼示範
這裡假設test1就是我們運作的程式,然後我們設定每10秒重新開機一次。
           
import os
import sys
import time


def test1():
    print("HEELO WORLD")


if __name__ == '__main__':
    test1()
    time.sleep(10)
    print('程式重新開機...')
    p = sys.executable
    os.execl(p,p,*sys.argv)
           

#運作結果

如何定時重新開機正在運作python程式(代碼)