亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python多線程正確用法實例解析

瀏覽:87日期:2022-07-23 18:07:17

python 里有一個 threading 模塊,其中提供了一個函數:

threading.Thread(target=function, args=(), kwargs={})

function 是開發者定義的線程函數,

args 是傳遞給線程函數的參數,必須是tuple類型,

kwargs 是可選參數,字典類型。

調用 threading.Thread 之后,會創建一個新的線程,參數 target 指定線程將要運行的函數,args 和 kwargs 則指定函數的參數來執行

function 函數。

改寫一下前面的代碼,將抓取的部分放在一個函數中:

def get_weather(city): req = requests.get(’http://wthrcdn.etouch.cn/weather_mini?city=%s’ % city) dic_city = req.json() city_data = dic_city.get(’data’) # 沒有’data‘的話返回 [] print(city_data.get(’city’)) if city_data: city_forecast = city_data[’forecast’][0] # 下面的都可以換成’get’方法 print(city_forecast.get(’date’)) print(city_forecast.get(’high’)) print(city_forecast.get(’low’)) print(city_forecast.get(’type’)) else: print(’未獲得’) print()

之后,程序采用了三個循環,在第一個循環中,針對每一個城市,都創建了一個新線程,并將線程加入到一個列表中,用于之后的啟動。

threads = []cities = [’北京’, ’南京’, ’上海’, ’深圳’, ’廣州’, ’杭州’, ’蘇州’, ’天津’, ’西安’, ’成都’]files = range(len(cities))for i in files: # 創建線程 t = threading.Thread(target=get_weather, args=(cities[i],)) threads.append(t)

在第二個循環中,start 正式開啟子線程;

for i in files: threads[i].start()

在第三個循環中,join 用來同步數據,主線程運行到這一步,將會停下來等待子線程運行完畢。沒有這句,主線程則會忽略子線程,運行

完自己的代碼后結束程序。

for i in files: threads[i].join()

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产aaaaaa| 一级毛片日韩a欧美最爱 | 美女一级大黄录像一片 | 2020国产免费久久精品99 | 自拍亚洲一区 | 国内精品视频九九九九 | 精品精品国产高清a毛片 | 日韩精品无码一区二区三区 | 日韩欧美亚洲视频 | mm1313亚洲国产精品无 | 国产一精品一aⅴ一免费 | 精品欧美一区二区在线观看欧美熟 | 日本视频免费高清一本18 | 国产欧美日本亚洲精品五区 | 伊人网中文字幕 | 国产一区二区视频在线 | 国产大秀视频在线一区二区 | 真实男女xx00动态视频免费 | 亚洲天天综合色制服丝袜在线 | 久久www成人看片 | 国产h在线观看 | 国产精品免费观看 | 国产精品色婷婷在线观看 | 欧美片能看的一级毛片 | 爱爱动态视频免费 | 福利片在线观看免费高清视频 | 桃花福利视频在线观看 | 久久精品94精品久久精品动漫 | 插插插av| 亚洲二区在线播放 | 亚洲精品久久午夜香蕉 | 久久er99热精品一区二区 | 国产精品v欧美精品v日本精 | 黄色一级片免费播放 | 中国国产一国产一级毛片视频 | 免费一级生活片 | 国产成人禁片在线观看 | 精品成人免费一区二区在线播放 | 国产欧美二区三区 | 国产亚洲欧美一区二区 | 操碰在线视频 |