亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python 中線程部分的代碼實踐求教 主要是類的

Python 中線程部分的代碼實踐求教 主要是類的

22with33 2018-09-21 20:22:26
import?math import?time from?threading?import?Thread class?SquareRootCaluatotor: ????"""This?class?spawn?a?separate?thread?to?calculate?a?bunch?of?square?roots?,and?checks?in?it?once?a?second?until?it?finishes""" ????def?__init__(self,target): ????????"""Turn?on?the?calculator?thread?and,while?waiting?for?it?to?finish,periodically?monitor?its?progress""" ????????self.result?=?[] ????????counter?=?self.CalculatorThread(self,target) ????????print("Turning?on?the?calculator?thread") ????????counter.start() ????????while?len(self.result)<target: ????????????print("%d?square?roots?calculated?so?far."?%len(self.result)) ????????????time.sleep(1) ????????print("calculated?%s?square?root;the?last?one?is?sqrt(%d)=%f"?%(target,len(self.results),self.result.results[-1])) class?CalculatorThread(Thread): ????"""A?separate?thread?which?actually?does?the?calculations.""" ????def?__init__(self,controller,target): ????????"""Set?up?this?thread,including?makeing?it?a?daemon?thread?so?that?the?script?can ????????end?without?waiting?for?this?thread?to?finish""" ????????Thread.__init__(self) ????????self.controller?=?controller ????????self.target?=?target ????????self.setDaemon(True) ????def?run(self): ????????"""Calculate?square?roots?for?all?numbers?between?1?and?the?target,?inclusive.""" ????????for?i?in?range(1,self.target+1): ????????????self.controller.results.append(math.sqrt(i)) ????if?__name__?==?'main': ????????import?sys ????????limit?=?None ????????if?len(sys.argv)?>1: ????????????limit?=?sys.argv[1] ????????????try: ????????????????limit?=?int(limit) ????????????except?ValueError: ????????????????print("Usage:%s?[number?of?square?roots?to?calculate" ????????????????%?sys.argv[0]) ????????SquareRootCaluatotor(limit)求教:1在給SquareRootCaluatotor類實例后運行,總是提示無CalculatorThread屬性,請問這是為什么?????????????2 這個文件的正確運行步驟是什么?我給SquareRootCaluatotor賦變量運行是否正確?
查看完整描述

2 回答

  • 2 回答
  • 0 關注
  • 945 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號