import?time
琿春網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),琿春網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為琿春上千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的琿春做網(wǎng)站的公司定做!
import?os
import?schedule
import?pyautogui
def?Rec():
record?=?os.startfile("C:\Program?Files?(x86)\EVCapture\EVCapture.exe")
schedule.every().day.at("16:40").do(Rec)
while?True:
if?pyautogui.hotkey('ctrl',?'f2'):
break
schedule.run_pending()
time.sleep(1)
def?Star_t():
St?=?pyautogui.hotkey('ctrl',?'f1')
Star_t()
看你的問題,相信你也知道break只能跳出單層循環(huán)。
要跳出多層循環(huán),方法有兩個(gè):
1.每層都使用一次break(注意放置位置,不然很容易拋出異常)
2.使用return返回,這個(gè)是函數(shù)里面才有的(雖然這個(gè)方法已經(jīng)和break毫無關(guān)系,但是功能也能實(shí)現(xiàn))
兩個(gè)方法區(qū)別:使用break,每層都用break,增加代碼量,不適于閱讀。但可以運(yùn)用于整個(gè)Python環(huán)境。
使用return,可以跳出多層循環(huán),并且只使用一次就行,放在你希望跳出循環(huán)的位置。但必須和函數(shù)結(jié)合使用
程序一定會(huì)運(yùn)行到clean()函數(shù),但是,如果你代碼寫的多,你就應(yīng)該知道,濫用try...except...會(huì)讓你非常痛苦。例如它突然給你打印一個(gè)運(yùn)行異常: 1。你根本不知道是哪里出了問題,也不知道具體出了什么問題。為了找到問題,你必須讓程序把錯(cuò)誤爆出來。但這樣一來,clean()又不能正常運(yùn)行了。Python退出時(shí)強(qiáng)制運(yùn)行一段代碼
有什么辦法,既能讓程序報(bào)錯(cuò),又能在報(bào)錯(cuò)已經(jīng)還能運(yùn)行clean()呢?
這個(gè)時(shí)候,我們就可以使用Python自帶的atexit這個(gè)模塊了。它的使用方法非常簡(jiǎn)單:
import atexit
@atexit.register
def clean():
print('清理環(huán)境相關(guān)的代碼')
setup()
test()
這樣一來,我們不需要顯式調(diào)用clean函數(shù)了。無論程序正常結(jié)束,還是程序異常報(bào)錯(cuò),clean函數(shù)里面的內(nèi)容總會(huì)執(zhí)行。
喜歡在循環(huán)、函數(shù)里使用多個(gè)單行的if判斷,如果true直接跳出。
類似常用的傳值類型判斷。
類似以下:
這種句式的好處是邏輯非常清晰。
但是有時(shí)要在if里嵌套if,因?yàn)樗皇呛瘮?shù)也不是循環(huán),就無法正常退出。
例如:
當(dāng)然可以用if...else解決,但是結(jié)構(gòu)就不那么清晰
為了達(dá)到我的逐行判斷、邏輯清晰的目的,我決定這么使用:
整體結(jié)構(gòu)很簡(jiǎn)單。
相當(dāng)于在備份a前加了兩個(gè)判斷。
我討厭大規(guī)模的for循環(huán)、嵌套for循環(huán),但卻喜歡1的for循環(huán)。
returnbreak都可以終止函數(shù)的運(yùn)行exit(0)#無錯(cuò)誤退出exit(1)#有錯(cuò)誤退出這兩條語句一般都會(huì)加在程序的最后因?yàn)閑xit是迫使系統(tǒng)去終止程序的運(yùn)行
在Python中,你可以使用 time.sleep 函數(shù)來等待一段時(shí)間。例如,要等待1秒鐘,你可以這樣寫:
import time# 循環(huán)10次for i in range(10): print(i)
time.sleep(1) # 等待1秒鐘
上面的代碼將會(huì)打印出0到9,每次打印之間間隔1秒鐘。
另外,如果你想要在循環(huán)中跳出來,你可以使用 break 語句,例如:
import timefor i in range(10): print(i)
time.sleep(1) if i == 5: # 如果i等于5
break # 跳出循環(huán)
上面的代碼將會(huì)打印出0到5,每次打印之間間隔1秒鐘,然后跳出循環(huán)。
總之,你可以使用 time.sleep 函數(shù)來等待一段時(shí)間,并使用 break 語句來跳出循環(huán)。