您好,登錄后才能下訂單哦!
這篇文章主要講解了“Python關(guān)鍵技術(shù)有哪些”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Python關(guān)鍵技術(shù)有哪些”吧!
一種面向?qū)ο蟮母呒墑討B(tài)可解釋型腳本語言。
Python 解釋器一次讀取一行代碼,將其解釋為低級機器語言 (如字節(jié)代碼) 并執(zhí)行它。
因此這種語言經(jīng)常會引發(fā)運行錯誤。
Python 是當(dāng)前最流行的語言,因為它更容易編碼且具有很強的可解釋性。
Python 是一種面向?qū)ο蟮木幊陶Z言,也可用于編寫一些功能代碼。
Python 是能夠很好地彌補業(yè)務(wù)和開發(fā)人員之間差距。
與其他語言 (如 C#/Java) 相比,Python 程序被推向市場的時間更短。
Python 自帶大量的機器學(xué)習(xí)和分析包。
大量社區(qū)和書籍可用于支持 Python 開發(fā)人員。
從預(yù)測分析到UI,幾乎所有類型的應(yīng)用程序都可以用 Python 實現(xiàn)。
Python 程序無需聲明變量類型。 因此,所構(gòu)建的應(yīng)用程序能有更快的運行速度。
與其他語言 (C++,C#,Java) 相比,Python 程序的運行更慢,這是因為Python 中缺少類似 Just In Time 優(yōu)化器的支持。
Python 語法空白約束給新手編碼實現(xiàn)帶來一些困難。
Python 不像 R 語言那樣提供高級的統(tǒng)計功能。
Python 不適合進行低級系統(tǒng)和硬件交互。
下圖展示了 Python 在機器上的運行機制。這里的關(guān)鍵是解釋器,它是負(fù)責(zé)將高級的 Python 語言編譯成低級的機器語言,以便理解。
可在程序中使用的變量存儲信息,如保存用戶輸入,程序的本地狀態(tài)等。
Python 中的變量以名字命名。
Python 中變量類型包括數(shù)字,字符串,集合,列表,元組和字典,這些都是標(biāo)準(zhǔn)的數(shù)據(jù)類型。
如下所示:這里首先分別為變量 myFirstVariable 分配整型數(shù)值1,字符串“Hello You”。由于 Python 中的數(shù)據(jù)類型是動態(tài)變化的,因此這種重復(fù)賦值操作是可以實現(xiàn)的。
Python 中變量賦值操作又稱為綁定 (blinding)。
如下所示,Python 支持整型,小數(shù),浮點型數(shù)據(jù)。
此外,也能支持長整型,以 L 為后綴表示,如999999999999L。
字符串就是字母的序列表示文本信息。
字符串的值用引號括起來,如下所示。
字符串是不可改變的,一旦創(chuàng)建,就不能被修改。如下所示:
當(dāng)字符串變量被賦予一個新值時,Python 將創(chuàng)建一個新的目標(biāo)來存儲這個變量值。
局部變量
局部變量,如在一個函數(shù)內(nèi)聲明一個變量,則該變量只存在于該函數(shù)中。
局部變量在外部是不能被訪問的,如下所示。
Python 中 if-else 和 for/while 循環(huán)模塊是不能創(chuàng)建局部變量,如下所示在 for/while 循環(huán)中:
輸出為:
在 if-else 模塊中:
輸出為
全部變量
全局變量可以通過任意一個全局函數(shù)訪問,它們存在于 __main__ 框架中。
此外,在函數(shù)之外你也可以聲明一個全局變量。值得注意得是,當(dāng)需要為一個全局變量分配新值時,必須使用“global”關(guān)鍵字,如下所示:
當(dāng)移除“Global TestMode”只能在 some_function() 函數(shù)中將變量設(shè)置為 False。如果你想在多個模塊間共享一個全局變量,那么你需要創(chuàng)建一個共享模塊文件。如 configuration.py,并在文件中找到你所需的變量。最后導(dǎo)入共享模塊。
通過 type() 函數(shù)來查看變臉類型,如下所示。
逗號可視為是變量序列,如下所示。
Python 支持基礎(chǔ)的加減乘除數(shù)值計算,也支持地板除法 (floor division),如下所示。
此外,Python 還支持指數(shù)運算 (**),如下所示。
同時,Python 還能進行除法取余操作,如下所示。
字符串拼接
字符串復(fù)制
字符串切片
字符串反序
如果你想得到字符串的最后一個字符,那需要使用負(fù)索引值,如下所示。
查看索引值
split():通過正則表達式將一個字符串分割得到一個列表。
sub():通過正則表達式取代所要匹配的字符。
subn():通過正則表達式取代所要匹配的字符并返回所替代字符的個數(shù)。
str(x):將變量 x 轉(zhuǎn)為字符串類型
int(x):將變量 x 轉(zhuǎn)為整型
float(x):將變量 x 轉(zhuǎn)為浮點型
集合是一種無序的數(shù)據(jù)集合,定義一個集合變量,如下所示。
集合交集
獲取兩個集合的公共部分,如下所示。
集合差異
獲取兩個集合之間的不同部分,如下所示。
集合并集
獲取兩個集合的并集,如下所示。
用于在一行編寫條件語句,語法結(jié)構(gòu)為 [If True] if [Expression] Else [If False],如下所示。
單行注釋
多行注釋
可用于布爾運算,如:
Equality:==
Not Equality:!=
Greater:>
Less:<
Greater or Equal:>=
Less or Equal:<=
將對象轉(zhuǎn)換為字符串并將字符串轉(zhuǎn)儲為一個文件的過程稱為 pickling,反之則稱為 unpickling。
函數(shù)是一種可以在代碼中執(zhí)行的語句序列。如果在你的代碼中出現(xiàn)重復(fù)的語句,那么可以創(chuàng)建一個可重用的函數(shù)并在程序中使用它。
函數(shù)也可以引用其他函數(shù)。
函數(shù)消除了代碼中的重復(fù),這使得代碼調(diào)試和問題查找變得更容易。
函數(shù)使得代碼更易于理解且易于管理。
函數(shù)允許將一個大型的應(yīng)用程序拆分為一些小的模塊。
定義一個新的函數(shù)
調(diào)用一個函數(shù)
查看字符串的長度
可以調(diào)用函數(shù) len(x),如下所示。
參數(shù)
參數(shù)可以被添加到一個函數(shù)中,使得函數(shù)更通用。
通過參數(shù),可以將一個變量傳遞給方法,如下所示。
可選參數(shù)
為參數(shù)提供一個默認(rèn)值來傳遞一個可選參數(shù),如下所示。
* 參數(shù)
如果想讓函數(shù)使用任意數(shù)量的參數(shù),那么需要在參數(shù)名前添加 *,如下所示。
** 參數(shù)
** 允許傳遞可變數(shù)量的關(guān)鍵字參數(shù)給函數(shù),同時也可以傳遞一個字典值作為關(guān)鍵字參數(shù)。
Return
函數(shù)能夠返回一個值,如下所示。
如果一個函數(shù)需要返回多個值的話,那么最好返回一個元組 (以逗號隔開每個值),如下所示。
Lambda 函數(shù)
是一種單行表達式的匿名函數(shù)
是一種內(nèi)聯(lián)函數(shù)
Lambda 函數(shù)沒有聲明,只是通過一個表達式來實現(xiàn),如下所示。
函數(shù)的語法結(jié)構(gòu)為:variable = lambda arguments: expression
Lambda 函數(shù)也可以作為參數(shù)傳遞給其他的函數(shù)。
dir() 和 help()
dir() 用于顯示定義的符號
help() 用于顯示幫助文檔
Python 語言附帶了200多個標(biāo)準(zhǔn)模塊。
模塊是一種將 python 程序中相似功能進行分組的組件。
任何 python 代碼文件都可以打包為模塊,然后再導(dǎo)入。
模塊允許使用者在自己的代碼解決方案中進行組件化設(shè)計。
模塊提供了命名空間的概念,幫助使用者共享數(shù)據(jù)和服務(wù)。
模塊鼓勵代碼重用,并減少變量名稱沖突。
這是 python 的環(huán)境變量,表示用于操作模塊的 python 解釋器所在的位置。PYTHONHOME 是一個用于搜索該路徑的模塊。
如果你有一個文件:MyFirstPythonFile 包含很多個函數(shù),變量和對象,然后你可以將這些功能導(dǎo)入到其他類中,如下所示。
Python 內(nèi)部會將模塊文件編譯為二進制再運行模塊的代碼
如果想導(dǎo)入模塊中的所有對象,可以這樣:
如果模塊中包含的函數(shù)或?qū)ο竺麨?my_object,那么你可以將其打印出來,如下所示。
值得注意的是,如果你不想在加載時執(zhí)行模塊的話,那么你需要檢查是否有 __name__ == ‘__main__’
如果你只是想訪問模塊中的一個對象或某個部分,可以這樣:
這種方式導(dǎo)入模塊允許使用者在訪問模塊中的對象,而無需引用模塊,如下所示。
可以通過 from * 來導(dǎo)入模塊中的所有對象,如下所示。
值得注意的是,模塊只能在第一次 import 時導(dǎo)入。如果你想使用 C 模塊,那么你可以使用 PyImport_ImportModule。此外,如果你想在兩個不同模塊中使用定義相同的對象,那么可以將 import 和 from 結(jié)合起來導(dǎo)入模塊。
Python 中包是模塊的目錄。
如果你的 Python 代碼中提供了大量功能,這些功能被分組到模塊文件中,那么可以從模塊中創(chuàng)建一個包,以便更好地分配和管理這些模塊。
包能夠更好地管理和組織模塊,這有助于使用者更輕松地解決問題和查找模塊。
可以將第三方軟件包導(dǎo)入到代碼中,如 pandas/scikit learn 和 tensorflow等等。
包可以包含大量的模塊。
如果代碼中的某些部分提供相似的功能,那么可以將模塊分組到一個包中,如下所示。
上圖中 packageroot 是一個根目錄 (root folder),packagefolder 是其根目錄下面的一個子目錄,而 my_module 是在 packagefolder 目錄下的一個 python 模塊文件。
此外,文件夾名可以作為命名空間,如下所示。
值得注意的是,需要確保所導(dǎo)入的包中每個目錄都包含一個 __init__.py 文件。
PIP
PIP 是 python 的包管理器。
可以使用 PIP 來下載包,如下所示。
條件語句 if else,如下所示。
請注意冒號和縮進在條件語句中的使用。
檢查類型
你也可以在 else 部分繼續(xù)添加條件邏輯語句,這樣構(gòu)成嵌套條件結(jié)構(gòu),如下所示。
While
While 語句提供一個條件,運行循環(huán)語句直到滿足該條件位置,循環(huán)終止,如下所示。
For
循環(huán)一定的次數(shù),如下所示。
循環(huán)遍歷整個字符串的所有字符,如下所示。
單行 for 循環(huán)
語法結(jié)構(gòu)為 [Variable] AggregateFunction ([Value] for [item] in [collection])
Yielding
假定你的列表中包含一萬億條數(shù)據(jù),需要從列表中計算偶數(shù)的數(shù)量。這時候?qū)⒄麄€列表加載到內(nèi)存中并不是最佳的做法,你可以通過列表來生成每個項。
使用 xrange 的循環(huán)結(jié)構(gòu)
結(jié)合條件 if 的 for 循環(huán)
通過帶 if 的 for 循環(huán)來查找兩個單詞中的字母,如下所示。
Break
如果你想終止循環(huán),可以這樣:
使用 Fibonacci 函數(shù)的循環(huán)結(jié)構(gòu),如下所示。
函數(shù)調(diào)用自身的過程稱為遞歸。
下面來演示一個階乘遞歸函數(shù):
創(chuàng)建一個階乘函數(shù),輸入為 n
如果輸入 n=0,則0! = 1
如果輸入 n != 0,則n! = n(n-1)!
此外,F(xiàn)ibonacci 遞歸函數(shù)的流程如下所示:
創(chuàng)建一個 Fibonacci 遞歸函數(shù),輸入為 n
創(chuàng)建前兩個變量,并為其分別賦值0和1
如果輸入 n = 0,則返回0;如果輸入 n =1,則返回1;否則,返回 (n-1)+(n-2)
值得注意的是,遞歸結(jié)構(gòu)需要有一個退出檢查,否則函數(shù)將進行無限循環(huán)。
Python 代碼被加載到堆棧中的框架。
函數(shù)及其參數(shù)和變量一起被加載到框架中。
框架以正確的執(zhí)行順序被加載到堆棧中。
堆棧描述了函數(shù)的執(zhí)行。在函數(shù)外聲明的變量被存儲在 __main__ 中。
堆棧首先執(zhí)行最后一個框架。
如果遇到運行錯誤,可以使用回溯 (traceback) 來查找函數(shù)列表。
列表是一種能夠包含任何數(shù)據(jù)類型的序列數(shù)據(jù)結(jié)構(gòu),這種結(jié)構(gòu)是可變的。
列表可以進行整數(shù)索引,可以使用中括號來創(chuàng)建一個列表,如下所示。
使用索引值來添加、更新、刪除列表中的項,如下所示。
此外,復(fù)制和切片同樣適用于列表 (可類比字符串中的操作), 列表還支持排序操作,如下所示。
在某種程度上元組和列表類似,都是可以存儲任意對象序列的數(shù)據(jù)結(jié)構(gòu)。
元組的運行比列表更快速。
元組可以進行整數(shù)索引
元組是不可變的,如下所示。
值得注意的是,如果一個元組中的元素包含一個列表,那么可以對列表進行修改。同樣,當(dāng)為一個對象賦值并將該對象存儲到列表中,隨后如果對象發(fā)生變化的話,相應(yīng)地,列表中的對象也會進行更新。
字典是編程語言中最重要的一種數(shù)據(jù)結(jié)構(gòu)之一,它能夠存儲鍵值對 (key/value) 對象。
字典有許多優(yōu)點,能夠輕松地進行數(shù)據(jù)檢索,如下所示。
可以通過如下方式創(chuàng)建一個字典。
打印字典中的內(nèi)容,如下所示。
字典中的值可以是任意類型的數(shù)據(jù),包括字符串,數(shù)值,布爾型,列表甚至是字典,如下所示。
值得注意的是,如果你想對一個列表進行向量或矩陣操作,可以調(diào)用 Numpy 包來實現(xiàn)。
這些特征可用于一些以其他語言編寫的文件,例如 C 或 C++ 等。
一旦將代碼寫入文件后,可以將文件放在 Modules 目錄中。
在 Setup.local 文件中添加一行是非常重要的,這能確保新創(chuàng)建的文件能夠被加載。
編譯 Compilation
允許無任何錯誤地進行新擴展的編譯過程。
關(guān)聯(lián) Linking
一旦新的擴展編譯完成,他們之間就會被關(guān)聯(lián)。
Iterators
允許遍歷一個集合
所有迭代器都包含 __iter __() 和 __next __() 函數(shù)
只需在列表,字典,字符串或集合上執(zhí)行 iter(x) 即可
可以執(zhí)行實例 next(iter),這里 iter = iter(list)
如果集合中元素項的數(shù)目非常大且無法一次加載內(nèi)存中的所有文件,此時迭代器很有用
有一些通用的迭代器使開發(fā)人員能夠?qū)崿F(xiàn)函數(shù)式編程,如下:
Filter
根據(jù)條件過濾掉相應(yīng)的值
Map
對集合中的每個值進行計算,即將值進行映射,如將文本轉(zhuǎn)為整型數(shù)值。
Reduce
減少集合中的值,即得到一個更小的集合。如集合求和,它本質(zhì)上是可迭代的。
Zip
獲取多個集合并返回一個新集合
新集合的每個項,包含每個輸入集合中的元素
Zip 允許同時對多個集合進行橫向操作,如下所示。
Python 允許創(chuàng)建自定義類型,將這些用戶自定義的類型稱為類。這些類具有自定義屬性和功能。
面向?qū)ο蟮脑O(shè)計允許程序員根據(jù)自身所需的屬性和功能自定義創(chuàng)建對象。
屬性也可以引用另一個對象。
Python 中的類可以引用其他類。
Python 支持封裝 -- 實例函數(shù)和變量。
Python 支持繼承,如下所示。
類的一個實例稱為對象。對象具有可變性,一旦創(chuàng)建對象,相應(yīng)的屬性也將被更新。
__init__
__init__ 函數(shù)在所有類中都存在。當(dāng)需要進行類實例化時,該函數(shù)就將被執(zhí)行。__init__ 函數(shù)可以根據(jù)需要設(shè)置相應(yīng)的屬性,如下所示。
值得注意的是,self 參數(shù)將包含對象的引用,這與 C# 語言中的 this 參數(shù)類似。
__str__
當(dāng)調(diào)用 print 時,返回一個對象的字符串結(jié)果,如下所示。
因此,當(dāng)執(zhí)行 print 語句時,__str__ 將會被執(zhí)行。
__cmp__
如果想要提供自定義邏輯來比較同一實例的兩個對象,可以使用__cmp__ 實例函數(shù)。
__cmp__ 函數(shù)返回1 (更大), - 1 (更低) 和0 (相等),以指示兩個對象的大小。
可以將 __cmp__ 想象成其他編程語言中的 Equals() 方法。
Overloading
通過將更多參數(shù)作為實例,來重載一個對象。
還可以通過為 __add__ 來實現(xiàn)想要的運算符,如 +。
對象的淺拷貝 (Shallow Copy) 和深拷貝 (Deep Copy)
等效對象 – 包含相同的值
相同對象 – 引用相同的對象 – 內(nèi)存中指向相同的地址
如果要復(fù)制整個對象,可以使用復(fù)制模塊 (copy module),如下所示。
這將導(dǎo)致淺拷貝,因為屬性的引用指針將會被復(fù)制。
如果對象的一個屬性是對象引用,那么它將簡單地指向與原始對象相同的引用地址。
更新源對象中的屬性將導(dǎo)致目標(biāo)對象中的屬性也會更新。
淺拷貝是復(fù)制引用指針。
這種情況下可以利用深拷貝,如下所示。
如果 MyClass 包含引用 MyOtherClass 對象的屬性,則屬性的內(nèi)容將通過 deepcopy 復(fù)制到新創(chuàng)建的對象中。
深拷貝將對對象進行新的引用。
Python支持對象的繼承,即對象可以繼承其父類的功能和屬性。
繼承的類可以在其函數(shù)中包含不同的邏輯。
如果一個父類 ParentClass 有兩個子類 SubClass1 和 SubClass2,那么你可以使用Python來創(chuàng)建類,如下所示。
上例中兩個子類都將包含 my_function() 函數(shù)
類的繼承屬性鼓勵代碼的重用性和可維護性。
此外,python 中支持多類繼承,這與 C# 語言不同。
多類繼承 multi-Inheritance
如果你想調(diào)用父類函數(shù),可以這樣:
Python 中的所有對象都存儲在一個堆積空間 (heap space),而 Python 解釋器可以訪問此空間。
Python 有一個內(nèi)置的垃圾收集機制。
這意味著 Python 可以自動為程序進行分配和取消內(nèi)存,這與 C++ 或 C# 等其他語言類似。
垃圾收集機制主要是清除程序中未引用/使用的那些對象的內(nèi)存空間。
由于多個對象可以共享內(nèi)存引用,因此 python 使用兩種機制:
引用計數(shù):計算引用對象的數(shù)目。如果對象的計數(shù)為0,則取消對象的空間分配。
循環(huán)引用:這種機制關(guān)注的是循環(huán)引用:當(dāng)取消分配 (deallocation) 的數(shù)目大于閾值時,僅取消對象所在的內(nèi)存空間分配。
在 Python 中新創(chuàng)建的對象,可以通過如下方式進行檢查:
此外,也可以通過及時或者基于事件機制來進行手動的垃圾收集。
From Keyboard
使用 raw_input() 函數(shù),如下所示。
文件 Files
使用with/as語句來打開并讀取文件,這與 C# 中讀取文件的操作一致。
此外,with 語句還可以處理關(guān)閉連接和其他清理操作。
打開一個文件,如下所示。
需要注意的是,readline() 可用于讀取文件中的每一行。
打開兩個文件,如下所示。
文件寫入,如下所示。
Python 中對文件的操作通常涉及 os 和 shutil 模塊。rw 表示讀寫模式,a代表可添加模式。
SQL
打開一個連接,如下所示。
執(zhí)行一個 SQL 聲明,如下所示。
網(wǎng)絡(luò)服務(wù) (Web Services)
查詢一個閑置服務(wù),如下所示:
序列化和反序列化 JSON 文件
反序列化 JSON,如下所示:
序列化 JSON,如下所示:
如果你想拋出異常,那么可以使用 raise 關(guān)鍵字,如下所示。
可以通過如下方式捕獲異常信息:
如果想捕獲特定的異常,可以這樣:
如果想使用 try/catch/finally 結(jié)構(gòu)捕獲異常信息,可以這樣:
值得注意的是,無論 finally 部分的代碼是否觸發(fā),你都可以使用 finally 來關(guān)閉數(shù)據(jù)庫/文件的連接。
如果想為異常信息分配一個變量,可以這樣:
如果想定義用于自定義的限制,可以通過 assert 關(guān)鍵字實現(xiàn),如下所示:
值得注意的是,python 中的異常同樣具有繼承性。
此外,你也可以創(chuàng)建自己的異常類,如下所示:
GIL 表示 Global Interpreter Lock。
GIL 確保線程可以在任何時間執(zhí)行,并允許 CPU 選擇要執(zhí)行的所需線程。
GIL 能夠傳遞當(dāng)前正在執(zhí)行的線程。
Python 支持多線程。
此外,GIL 會增加代碼執(zhí)行的計算開銷。因此,運行多線程時需謹(jǐn)慎。
裝飾器可以為代碼添加功能,其本質(zhì)上是一種調(diào)用其他對象/函數(shù)的函數(shù)。 它是可調(diào)用函數(shù),因此在調(diào)用裝飾器函數(shù)時將返回隨后需要調(diào)用的對象。
通過封裝包/裝一個類/函數(shù),然后在調(diào)用函數(shù)時執(zhí)行特定的代碼。
此外,還可以通過實現(xiàn)通用邏輯來記錄,進行安全檢查等,然后使用 property 標(biāo)記方法的屬性。
Python 中有許多單元測試和模擬庫
下面以 unittest 為例
假定你的函數(shù)每次將輸入值減少1,如下所示:
可以通過如下方式來進行單元測試:
同樣地,也可以使用 doctest 來測試 docstrings 中所編寫的代碼。
編碼簡單,易于學(xué)習(xí)
面向?qū)ο缶幊陶Z言
強大的分析功能和機器學(xué)習(xí)包
更快速地開發(fā)并將解決方案推向市場
提供內(nèi)置的內(nèi)存管理功能
提供巨大的社區(qū)支持和應(yīng)用程序
無需編譯,因為它本身是一種可解釋的語言
動態(tài)輸入,即無需聲明變量
Python 是一種高級語言,不適合在系統(tǒng)程序或硬件層面訪問。
Python 不適用于跨平臺的應(yīng)用程序。
Python 是一種動態(tài)類型的解釋語言。與低級語言相比,它的優(yōu)化和運行速度較慢。
實現(xiàn)基于 C 語言的擴展。
可以使用 Spark 或 Hadoop 創(chuàng)建多進程
可以利用 Cython,Numba 和 PyPy 來加速 Python 代碼或用 C 語言編寫它并在 Python 中公開。
包括 Spyder,Pycharm 等。此外,還會使用各種的 notebooks,如 Jupyter。
Python 中必須掌握的包有很多,包括 PyUnit (單元測試), PyDoc (文檔), SciPy (代數(shù)和數(shù)值計算), Pandas (數(shù)據(jù)管理), Sci-Kit learn (機器學(xué)習(xí)和數(shù)據(jù)科學(xué)), Tensorflow (人工智能), Numpy (數(shù)組和數(shù)值計算), BeautifulSoap (網(wǎng)頁爬取), Flask (微服務(wù)框架), Pyramid (企業(yè)應(yīng)用), Django (UI MVVM), urllib (網(wǎng)頁爬取), Tkinter (GUI), mock (模擬庫), PyChecker (bug 檢測器), Pylint (模塊代碼分析) 等。
對于 Unix 系統(tǒng):制作腳本文件,模式為可執(zhí)行且文件第一行必須是:
可以使用命令行工具并執(zhí)行它。也可以通過 PyPRI 和 PyPI 服務(wù)。
R 語言中有著大量豐富的統(tǒng)計庫,可以使用 Rpy2 python 包或在 Juputer 中使用 beaker 筆記本或 IR 內(nèi)核,在 Python 中執(zhí)行 R 代碼。
在運行代碼之前,可以使用 PyChecker 和 PyLink 來捕獲異常信息。
感謝各位的閱讀,以上就是“Python關(guān)鍵技術(shù)有哪些”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Python關(guān)鍵技術(shù)有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。