1、python3多執行緒自定義threading.thread的子類;
2、多執行緒並行,獲取多執行緒執行結果
import threading
from time import sleep
exitflag =
true
defpp1
(*args)
: i =
1while
(exitflag)
:print
('\r'
+' '*20
,end='')
print
('\r執行緒1執行中'
+'.'
*(i%7)
,end='')
sleep(
0.5)
i =(i>=
6and
1or i+1)
#if i>=6則i=1,否則i=i+1
print
('執行緒1結束'
)def
pp2(x,y)
: sleep(3)
print
('\n執行緒2結束'
)return x + y
class
mythread
(threading.thread)
:#mythread類繼承threading.thread類
def__init__
(self,func,args1=
none
,args2=
none):
threading.thread.__init__(self)
self.func = func
self.args1 = args1
self.args2 = args2
defrun(self)
:#t.start()語句呼叫run方法
self.result = self.func(self.args1,self.args2)
defgetresult
(self)
:#getresult方法可獲得func函式return的結果
threading.thread.join(self)
return self.result
t1 = mythread(pp1)
#初始化t1
t2 = mythread(pp2,2,
3)#初始化t1
t1.start(
)#啟動執行緒t1
t2.start(
)#啟動執行緒t2
t2.join(
)#判斷執行緒t2執行結束
exitflag =
false
#執行緒2執行結束後,執行緒1才能結束
t1.join(
)#判斷執行緒t1執行結束,執行緒t1結束後,主線程才能往下執行
print
('執行緒2返回結果: '
,t2.getresult())
print
('主線程結束'
)
python3自定義函式
一 什麼是函式 函式是組織好的,可重複使用的,用來實現單一,或相關聯功能的 段。函式能提高應用的模組性,和 的重複利用率。你已經知道python提供了許多內建函式,比如print 但你也可以自己建立函式,這被叫做使用者自定義函式。語法def 函式名 引數列表 函式體def func print 王小...
python3 自定義比較函式
python 2 中支援類似 c 中 cmp 的寫法 python 3 放棄了這一用法 官方說明 所以不想寫lambda的話,加一句cmp to key 就行了 def 比較函式 return 原來的方式是 sorted cmp 比較函式 現在的方式是 from functools import c...
python3 自定義比較器
摘要 在一些場景中,需要重新對已有的資料排序,可能所給出的資料型別或者資料數量較多,需要給定排序規則。import functools def by score t1,t2 if t1 0 t2 0 return 1 elif t1 0 t2 1 return 1 elif t1 1 t2 1 re...