国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現在的位置是:首頁 » python編程資訊

資訊內容

通俗易懂的理解Python中的多線程

極客小將2020-12-29-
簡介python里有一個threading模塊,其中提供了一個函數:threading.Thread(target=function, args=(), kwargs={})function是開發者定義的線程函數,args是傳遞給線程函數的參數,必須是tuple類型,kwargs是可

ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

python 里有一個 threading 模塊,其中提供了一個函數:ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

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

function 是開發者定義的線程函數,ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

args 是傳遞給線程函數的參數,必須是tuple類型,ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

kwargs 是可選參數,字典類型。ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

調用 threading.Thread 之后,會創建一個新的線程,參數 target 指定線程將要運行的函數,args 和 kwargs 則指定函數的參數來執行 ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

function 函數。ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

改寫一下前面的代碼,將抓取的部分放在一個函數中:ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

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

之后,程序采用了三個循環,在第一個循環中,針對每一個城市,都創建了一個新線程,并將線程加入到一個列表中,用于之后的啟動。ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

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

在第二個循環中,start 正式開啟子線程;ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

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

在第三個循環中,join 用來同步數據,主線程運行到這一步,將會停下來等待子線程運行完畢。沒有這句,主線程則會忽略子線程,運行ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

完自己的代碼后結束程序。ASr少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

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

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 绿春县| 紫阳县| 邻水| 平南县| 康保县| 渝中区| 樟树市| 游戏| 太原市| 西峡县| 綦江县| 台湾省| 丹寨县| 昭苏县| 承德县| 临夏市| 民乐县| 金乡县| 定远县| 游戏| 磴口县| 镇安县| 中阳县| 蓝山县| 阿瓦提县| 江津市| 涪陵区| 百色市| 潢川县| 文登市| 凭祥市| 桃源县| 辉县市| 广丰县| 金寨县| 台北市| 项城市| 麻栗坡县| 蓬莱市| 堆龙德庆县| 临澧县|