用定時器做,1秒鐘喚醒一次響應(yīng)函數(shù),不要用延時函數(shù) sleep
專注于為中小企業(yè)提供成都網(wǎng)站制作、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)仁布免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
# 定義時間顯示
self.timer = QtCore.QTimer(self)
self.timer.timeout.connect(self.act_displayTM) #綁定響應(yīng)函數(shù)
self.timer.setInterval(1000) #設(shè)置時間間隔
self.timer.start()
# 定時響應(yīng)事件對應(yīng)邏輯
def act_displayTM(self):
s_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
self.ui.label_Date.setText(s_time)
return
在你的這個思路中,可以優(yōu)化的主要就是幾方面:
1:求因數(shù)可以僅算到n的平方根q為止,對于n,每有一個小于q的因數(shù),就有一個對應(yīng)的大于q的因數(shù),兩者之積為n。
2:在完數(shù)函數(shù)中已經(jīng)完成了求因數(shù)的工作,不需要另做一次,直接在完數(shù)函數(shù)中拼裝結(jié)果即可。
3:目前來說,已知的完全數(shù)都是偶數(shù),因此,最后那行那里可以做num+=2優(yōu)化,但數(shù)學(xué)上目前還沒有證明不存在奇完全數(shù),這種做法從理論上來說是不嚴(yán)謹(jǐn)?shù)摹?/p>
實際上,當(dāng)一個數(shù)比較大的時候,做因數(shù)分解是一個很費時的工作,要找更大的完數(shù),需要更好的因數(shù)分解的方式。比如先求出所有的質(zhì)因數(shù),在使用這些質(zhì)因數(shù)的組合來尋找非質(zhì)因數(shù)。因為質(zhì)因數(shù)必然是在質(zhì)數(shù)表中,而質(zhì)數(shù)表可以建立一次然后重復(fù)使用,相對一個個的試商就快得多了。
如果要進(jìn)一步優(yōu)化以尋找更大的完全數(shù),那么,就需要利用更多的關(guān)于完全數(shù)的規(guī)律了,比如,除6以外,其它的完全數(shù)都是9n+1,都是p^2*q……,這些優(yōu)化在你這個框架下實現(xiàn)就比較麻煩。
總體來說,不解決因數(shù)分解的問題,主要就是上述三種優(yōu)化了。
超時機(jī)制。python中調(diào)用兩個函數(shù)需要給函數(shù)設(shè)置超時機(jī)制,以防止它超時,這里可以用python的signal模塊,signal模塊可以實現(xiàn)程序內(nèi)部的信號處理。
很簡單,新建一個線程即可
import threading
def input_func( context ):
context[ 'data' ] = input( 'input:' )
context = { 'data' : 'default' }
t = threading.Thread( target = input_func ,args = ( context , ) )
t.start( )
t.join( 10 )#等待10秒
print( context )
不管是什么程序,python使用tryexcept語句來處理異常。tryexcept語句不僅僅是要讓其捕獲異常更重要的是讓其忽略異常,因為爬蟲中的絕大多數(shù)異常可能重新請求就不存在,因此,發(fā)現(xiàn)異常的時候?qū)⑵淙蝿?wù)隊列進(jìn)行修復(fù)其實是個最省力的好辦法。
是為了防止url不可訪問,或者響應(yīng)速度太慢而造成的時間浪費。
比如,你要爬取1000個網(wǎng)站,如果有100個需要30s才能返回數(shù)據(jù),你等待他們返回的話就需要3000s了,如果你設(shè)置10s超時,那么就能知道最長需要多久1000個可以爬完。
如果解決了您的問題請采納!
如果未解決請繼續(xù)追問
當(dāng)前題目:python應(yīng)答超時函數(shù)的簡單介紹
文章分享:http://vcdvsql.cn/article22/hssjjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、App開發(fā)、ChatGPT、品牌網(wǎng)站設(shè)計、響應(yīng)式網(wǎng)站、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)