看教育直播丨python精講(Python 課)

  • 1、小白都看懂了,Python 中的線程和進程精講,建議收藏
  • 2、Python培訓費用是多少錢
  • 3、誰有Python教程啊?
  • 4、Python精講:Python中集合的交集並集差集和對稱差集運算方法詳解

目錄

眾所周知,CPU是計算機的核心,它承擔了所有的計算任務。而操作系統是計算機的管理者,是一個大管家,它負責任務的調度,資源的分配和管理,統領整個計算機硬體。應用程序是具有某種功能的程序,程序運行與操作系統之上

在很早的時候計算機並沒有線程這個概念,但是隨著時代的發展,只用進程來處理程序出現很多的不足。如當一個進程堵塞時,整個程序會停止在堵塞處,並且如果頻繁的切換進程,會浪費系統資源。所以線程出現了

線程是能擁有資源和獨立運行的最小單位,也是程序執行的最小單位。一個進程可以擁有多個線程,而且屬於同一個進程的多個線程間會共享該進行的資源

① 200 多本 Python 電子書(和經典的書籍)應該有

② Python標準庫資料(最全中文版)

③ 項目源碼(四五十個有趣且可靠的練手項目及源碼)

④ Python基礎入門、爬蟲、網路開發、大數據分析方面的視頻(適合小白學習)

⑤ Python學習路線圖(告別不入流的學習)

私信我01即可獲取大量Python學習資源

進程時一個具有一定功能的程序在一個數據集上的一次動態執行過程。進程由程序,數據集合和進程式控制制塊三部分組成。程序用於描述進程要完成的功能,是控制進程執行的指令集;數據集合是程序在執行時需要的數據和工作區;程序控制塊(PCB)包含程序的描述信息和控制信息,是進程存在的唯一標誌

在Python中,通過兩個標準庫 thread 和 Threading 提供對線程的支持, threading 對 thread 進行了封裝。 threading 模塊中提供了 Thread , Lock , RLOCK , Condition 等組件

在Python中線程和進程的使用就是通過 Thread 這個類。這個類在我們的 thread 和 threading 模塊中。我們一般通過 threading 導入

默認情況下,只要在解釋器中,如果沒有報錯,則說明線程可用

守護模式:

現在我們程序代碼中,有多個線程, 並且在這個幾個線程中都會去 操作同一部分內容,那麼如何實現這些數據的共享呢?

這時,可以使用 threading庫裡面的鎖對象 Lock 去保護

Lock 對象的acquire方法 是申請鎖

每個線程在操作共享數據對象之前,都應該申請獲取操作權,也就是調用該共享數據對象對應的鎖對象的acquire方法,如果線程A 執行了 acquire() 方法,別的線程B 已經申請到了這個鎖, 並且還沒有釋放,那麼 線程A的代碼就在此處 等待 線程B 釋放鎖,不去執行後面的代碼。

直到線程B 執行了鎖的 release 方法釋放了這個鎖, 線程A 才可以獲取這個鎖,就可以執行下面的代碼了

如:

到在使用多線程時,如果數據出現和自己預期不符的問題,就可以考慮是否是共享的數據被調用覆蓋的問題

使用 threading 庫裡面的鎖對象 Lock 去保護

Python中的多進程是通過multiprocessing包來實現的,和多線程的threading.Thread差不多,它可以利用multiprocessing.Process對象來創建一個進程對象。這個進程對象的方法和線程對象的方法差不多也有start(), run(), join()等方法,其中有一個方法不同Thread線程對象中的守護線程方法是setDeamon,而Process進程對象的守護進程是通過設置daemon屬性來完成的

守護模式:

其使用方法和線程的那個 Lock 使用方法類似

Manager的作用是提供多進程共享的全局變數,Manager()方法會返回一個對象,該對象控制著一個服務進程,該進程中保存的對象運行其他進程使用代理進行操作

語法:

線程池的基類是 concurrent.futures 模塊中的 Executor , Executor 提供了兩個子類,即 ThreadPoolExecutor 和 ProcessPoolExecutor ,其中 ThreadPoolExecutor 用於創建線程池,而 ProcessPoolExecutor 用於創建進程池

如果使用線程池/進程池來管理並發編程,那麼只要將相應的 task 函數提交給線程池/進程池,剩下的事情就由線程池/進程池來搞定

Exectuor 提供了如下常用方法:

程序將 task 函數提交(submit)給線程池後,submit 方法會返回一個 Future 對象,Future 類主要用於獲取線程任務函數的返回值。由於線程任務會在新線程中以非同步方式執行,因此,線程執行的函數相當於一個「將來完成」的任務,所以 Python 使用 Future 來代表

Future 提供了如下方法:

使用線程池來執行線程任務的步驟如下:

最佳線程數目 = ((線程等待時間+線程CPU時間)/線程CPU時間 )* CPU數目

也可以低於 CPU 核心數

使用線程池來執行線程任務的步驟如下:

關於進程的開啟代碼一定要放在 if __name__ == ‘__main__’: 代碼之下,不能放到函數中或其他地方

開啟進程的技巧

開啟進程的數量最好低於最大 CPU 核心數

Python培訓費用相對來說較高,Python的培訓費用成本是根據各種因素決定的。在北上廣深這樣的一線類城市,學習Python編程的費用大致是兩萬元以上不到兩萬五,就一線大城市來說,肯定要比非一線城市就業機會多,職位多,人才需求量大。但很多Python培訓機構學費都可以分期來支付,也就是上學的時候不需要交學費,等畢業工作後可以按月來償還學費。

這種方法對於經濟實力不強的學員還是很有幫助的。學員畢業後平均薪資在1W-3W左右,一到二個月的工資就可以了。一般來說,Python的培訓周期在五個月左右,學費大概在兩萬出頭的樣子。高於或者是低於這個價錢區間很多的時候,大家就要提高警惕了,切記不要貪便宜吃大虧;培訓費用是由各方面因素決定。其一是師資的配備,只要找到了真正靠譜的學校,只要我們真的認真去學習了,就一切都不是什麼難事。千鋒教育擁有多年Python培訓服務經驗,採用全程面授高品質、高體驗培養模式,擁有國內一體化教學管理及學員服務,助力更多學員實現高薪夢想。

Python教程百度網盤免費資源在線學習  

鏈接:

提取碼: zup2  

Python教程 智普教育python就業培訓視頻教程Swf版 小甲魚python 老王Python培訓視頻教程【基礎進階項目篇 – 完整版】 老男孩python課程 快速掌握 Python Django 1.5 網頁開發 [編程開發] 煉數成金Python網路程序系列教程[價值400元] python中古教育 Python灰帽教程基礎與深入 Python編程實踐教學視頻教程26集+源碼.rar python編程開發入門中文視頻培訓教程38講 Lets-python系列視頻教程26講 Hacking_python系列視頻.rar ★ 重要文件-必看 Lets-python-017-文件和輸入輸出01.avi  

歡迎你來到站長在線的站長學堂學習Python知識,本文學習的是《Python中集合的交集、並集、差集和對稱差集運算方法詳解》。主要講的是集合運算的相關的概念,及運算方法,包括:集合的交集、集合的並集、集合的差集、集合的對稱差集、集合的交集運算方法、集合的並集運算方法、集合的差集運算方法、集合的對稱差集運算方法。

在Python中,集合最常用的操作就是進行交集、並集、差集和對稱差集的運算。

要想學習集合的交集、並集、差集和對稱差集運算方法,首先我們來了解這些名詞的含義:

設A、B兩個集合,由所有屬於集合A且屬於集合B的元素所組成的集合,叫做集合A與集合B的交集。在Python中,進行交集運算時使用「」符號。

給定兩個集合A、B,把他們所有的元素合併在一起組成的集合,叫做集合A與集合B的並集。在Python中,進行並集運算時使用「|」符號。

設A,B是兩個集合,則所有屬於A且不屬於B的元素構成的集合,叫做集合A與集合B的差集。在Python中,進行差集運算時使用「-」符號。

對稱差集也稱為對稱差分或者補集,設A,B是兩個集合,所有不相同的集合,叫做集合A與集合B的對稱差集(對稱差分或者補集)。在Python中,進行對稱差集運算時使用「^」符號。

上面都是概念性的描述,下面站長在線來舉實際的場景來對交集、並集、差集和對稱差集運算方法進行深入淺出的解讀。

場景模擬:某高中三年級,文科班高考的科目是語文、數學、英語、政治、 歷史 和地理。理科班高考的科目是語文、數學、英語、物理、化學和生物。

設定集合A為文科班高考的科目,集合B為理科班高考的科目。

A = {‘語文’,’數學’,’英語’,’政治’,’ 歷史 ‘,’地理’}

B = {‘語文’,’數學’,’英語’,’物理’,’化學’,’生物’}

我們使用集合的交集運算的時候可以採用兩種方式,一種是使用「」運算符進行操作,另一種是使用 intersection() 方法來實現。

運行結果:

運行結果:

同理集合B和集合A的交集也是一樣。我這裡就不重複了,自己去體驗一下。

集合的並集運算也有兩種方式,一種是使用「|」運算符進行操作,另一種是使用union()方法來實現。

運行結果如下:

運行結果為:

同理集合B和集合A的並集也是一樣。自己去體驗一下吧!

集合的差集運算也有兩種方式,一種是使用「-」運算符進行操作,另一種是使用difference()方法來實現。

運行結果為:

上面是集合A和集合B的差集,但是集合B和集合A的差集就不是一樣的了哦!

運行結果為:

從上面可以看出,集合A和集合B的差集 與 集合B和集合A的差集是不一樣的,(A – B)是A中存在的部分,(B – A)是B中存在的部分。

運行結果:

同理,使用difference()方法進行集合B和集合A的差集也是不同的

運行結果:

集合的差集運算也有兩種方式,一種是使用「^」運算符進行操作,另一種是使用symmetric_difference()方法來實現。

運行結果為:

運行結果為:

同樣的,集合B與集合A的對稱差集也是一樣,自己去體驗一下。

我們對集合的交集、並集、差集和對稱差集運算方法全部詳細的講解了一遍,通過運行結果,我們得出結論:

集合中進行交集、並集、對稱差集進行運算的時候,集合A與集合B,位置替換的時候,結果相同。

集合中進行差集運算的時候,集合A與集合B,位置替換的時候,結果不同,為前面那個集合獨立存在的部分。

到此為止,本節課的內容《Python中集合的交集、並集、差集和對稱差集運算方法詳解》就完全講完了,主要講的集合運算的相關的概念,及運算方法,包括:集合的交集、集合的並集、集合的差集、集合的對稱差集、集合的交集運算方法、集合的並集運算方法、集合的差集運算方法、集合的對稱差集運算方法。

原創文章,作者:DOMPE,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/126846.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
DOMPE的頭像DOMPE
上一篇 2024-10-03 23:13
下一篇 2024-10-03 23:13

相關推薦

  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • 蝴蝶優化演算法Python版

    蝴蝶優化演算法是一種基於仿生學的優化演算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化演算法Python版…

    編程 2025-04-29
  • Python編程二級證書考試相關現已可以上網購買

    計算機二級Python考試是一項重要的國家級認證考試,也是Python編程的入門考試。與其他考試一樣,Python編程二級證書的考生需要進入正式考試,而為了備考,這篇文章將詳細介紹…

    編程 2025-04-29

發表回復

登錄後才能評論