最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2020年05月30日 17:03:49   作者:程序員的人生A  
這篇文章主要介紹了Python多線程正確用法實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

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

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

function 是開發(fā)者定義的線程函數(shù),

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

kwargs 是可選參數(shù),字典類型。

調(diào)用 threading.Thread 之后,會創(chuàng)建一個新的線程,參數(shù) target 指定線程將要運(yùn)行的函數(shù),args 和 kwargs 則指定函數(shù)的參數(shù)來執(zhí)行

function 函數(shù)。

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

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()

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

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

在第二個循環(huán)中,start 正式開啟子線程;

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

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

完自己的代碼后結(jié)束程序。

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

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python數(shù)據(jù)分析工具之 matplotlib詳解

    python數(shù)據(jù)分析工具之 matplotlib詳解

    對于 Python 來說,matplotlib 是最著名的繪圖庫,它主要用于二維繪圖,當(dāng)然也可以進(jìn)行簡單的三維繪圖。這篇文章主要介紹了python數(shù)據(jù)分析工具之 matplotlib的相關(guān)知識,需要的朋友可以參考下
    2020-04-04
  • python中cv2模塊安裝詳細(xì)圖文教程

    python中cv2模塊安裝詳細(xì)圖文教程

    在Python中cv2是OpenCV庫的一個模塊,這是一個開源的計算機(jī)視覺和機(jī)器學(xué)習(xí)軟件庫,下面這篇文章主要給大家介紹了關(guān)于python中cv2模塊安裝的相關(guān)資料,需要的朋友可以參考下
    2024-05-05
  • PyQt實現(xiàn)異步數(shù)據(jù)庫請求的實戰(zhàn)記錄

    PyQt實現(xiàn)異步數(shù)據(jù)庫請求的實戰(zhàn)記錄

    開發(fā)軟件的時候不可避免要和數(shù)據(jù)庫發(fā)生交互,但是有些 SQL 請求非常耗時,如果在主線程中發(fā)送請求,可能會造成界面卡頓,本文將介紹一種讓數(shù)據(jù)庫請求變得和前端的 ajax 請求一樣簡單,希望對大家有所幫助
    2023-12-12
  • Pytorch上下采樣函數(shù)之F.interpolate數(shù)組采樣操作詳解

    Pytorch上下采樣函數(shù)之F.interpolate數(shù)組采樣操作詳解

    最近用到了上采樣下采樣操作,pytorch中使用interpolate可以很輕松的完成,下面這篇文章主要給大家介紹了關(guān)于Pytorch上下采樣函數(shù)之F.interpolate數(shù)組采樣操作的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • python繪制ROC曲線的示例代碼

    python繪制ROC曲線的示例代碼

    本文主要介紹了python繪制ROC曲線的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 對DataFrame數(shù)據(jù)中的重復(fù)行,利用groupby累加合并的方法詳解

    對DataFrame數(shù)據(jù)中的重復(fù)行,利用groupby累加合并的方法詳解

    今天小編就為大家分享一篇對DataFrame數(shù)據(jù)中的重復(fù)行,利用groupby累加合并的方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python函數(shù)參數(shù)操作詳解

    Python函數(shù)參數(shù)操作詳解

    這篇文章主要介紹了Python函數(shù)參數(shù)操作,結(jié)合實例形式詳細(xì)分析了Python形參、實參、默認(rèn)參數(shù)、關(guān)鍵字參數(shù)、可變參數(shù)、對參數(shù)解包以及獲取參數(shù)個數(shù)等相關(guān)操作技巧,需要的朋友可以參考下
    2018-08-08
  • Python基于詞頻排序?qū)崿F(xiàn)快速挖掘關(guān)鍵詞

    Python基于詞頻排序?qū)崿F(xiàn)快速挖掘關(guān)鍵詞

    這篇文章主要為大家詳細(xì)介紹了Python如何基于詞頻排序?qū)崿F(xiàn)快速挖掘關(guān)鍵詞功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-03-03
  • Numpy中array數(shù)組對象的儲存方式(n,1)和(n,)的區(qū)別

    Numpy中array數(shù)組對象的儲存方式(n,1)和(n,)的區(qū)別

    本文主要介紹了Numpy中array數(shù)組對象的儲存方式(n,1)和(n,)的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 詳解Python3注釋知識點

    詳解Python3注釋知識點

    在本篇文章里小編給大家分享了關(guān)于Python3注釋的相關(guān)知識點以及用法,需要的朋友們學(xué)習(xí)下。
    2019-02-02

最新評論

驻马店市| 新野县| 安图县| 滨海县| 麻城市| 双柏县| 辽源市| 萍乡市| 静安区| 许昌市| 平和县| 吴川市| 高密市| 麻城市| 淮安市| 旅游| 五家渠市| 漾濞| 仁寿县| 阳信县| 介休市| 文山县| 德兴市| 乌兰察布市| 山东| 德格县| 馆陶县| 湖南省| 靖边县| 互助| 琼中| 慈溪市| 鄂托克前旗| 万源市| 耒阳市| 连州市| 正阳县| 奉新县| 庆元县| 金溪县| 肥乡县|