'一些Python基礎,你都知道麼?(內含Python視頻教程)'

"
"
一些Python基礎,你都知道麼?(內含Python視頻教程)

參考資料

  • 百度百科
  • 維基百科

整理了一些百度百科和維基百科的內容:

Python 簡介

Python(英國發音:/ˈpaɪθən/ 美國發音:/ˈpaɪθɑːn/), 是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum於 1989 年發明,第一個公開發行版發行於 1991 年。

Python 具有動態類型系統和自動內存管理,支持多種編程範式,包括面向對象、祈使、函數式編程和程序的樣式。它有一個大型和全面的標準庫。

Python 設計定位

Python的設計哲學是“優雅”、“明確”、“簡單”。Python開發者的哲學是“用一種方法,最好是隻有一種方法來做一件事”。在設計Python語言時,如果面臨多種選擇,Python開發者一般會拒絕花俏的語法,而選擇明確的沒有或者很少有歧義的語法。這些準則被稱為Python格言。在Python解釋器內運行import this可以獲得完整的列表。

Python開發人員儘量避開不成熟或者不重要的優化。一些針對非重要部位的加快運行速度的補丁通常不會被合併到Python內。所以很多人認為Python很慢。不過,根據二八定律,大多數程序對速度要求不高。在某些對運行速度要求很高的情況,Python設計師傾向於使用JIT技術,或者用使用C/C++語言改寫這部分程序。可用的JIT技術是PyPy。

Python是完全面向對象的語言。函數、模塊、數字、字符串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的複用性。Python支持重載運算符和動態類型。有兩個標準庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。

Python可能被粗略地分類為“腳本語言”(script language),而Python的支持者較喜歡稱它為一種高級動態編程語言,原因是“腳本語言”泛指僅作簡單程序設計任務的語言,如shellscript、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。

Python本身被設計為可擴充的。並非所有的特性和功能都集成到語言核心。Python提供了豐富的API和工具,以便程序員能夠輕鬆地使用C語言、C++、Cython來編寫擴充模塊。Python編譯器本身也可以被集成到其它需要腳本語言的程序內。因此,很多人還把Python作為一種“膠水語言”(glue language)使用。使用Python將其他語言編寫的程序進行集成和封裝。在Google內部的很多項目,例如Google Engine使用C++編寫性能要求極高的部分,然後用Python或Java/Go調用相應的模塊。《Python技術手冊》的作者馬特利(Alex Martelli)說:“這很難講,不過,2004 年,Python 已在Google 內部使用,Google 召募許多 Python 高手,但在這之前就已決定使用Python,他們的目的是 Python where we can, C++ where we must,在操控硬件的場合使用 C++,在快速開發時候使用 Python。”

"
一些Python基礎,你都知道麼?(內含Python視頻教程)

參考資料

  • 百度百科
  • 維基百科

整理了一些百度百科和維基百科的內容:

Python 簡介

Python(英國發音:/ˈpaɪθən/ 美國發音:/ˈpaɪθɑːn/), 是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum於 1989 年發明,第一個公開發行版發行於 1991 年。

Python 具有動態類型系統和自動內存管理,支持多種編程範式,包括面向對象、祈使、函數式編程和程序的樣式。它有一個大型和全面的標準庫。

Python 設計定位

Python的設計哲學是“優雅”、“明確”、“簡單”。Python開發者的哲學是“用一種方法,最好是隻有一種方法來做一件事”。在設計Python語言時,如果面臨多種選擇,Python開發者一般會拒絕花俏的語法,而選擇明確的沒有或者很少有歧義的語法。這些準則被稱為Python格言。在Python解釋器內運行import this可以獲得完整的列表。

Python開發人員儘量避開不成熟或者不重要的優化。一些針對非重要部位的加快運行速度的補丁通常不會被合併到Python內。所以很多人認為Python很慢。不過,根據二八定律,大多數程序對速度要求不高。在某些對運行速度要求很高的情況,Python設計師傾向於使用JIT技術,或者用使用C/C++語言改寫這部分程序。可用的JIT技術是PyPy。

Python是完全面向對象的語言。函數、模塊、數字、字符串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的複用性。Python支持重載運算符和動態類型。有兩個標準庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。

Python可能被粗略地分類為“腳本語言”(script language),而Python的支持者較喜歡稱它為一種高級動態編程語言,原因是“腳本語言”泛指僅作簡單程序設計任務的語言,如shellscript、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。

Python本身被設計為可擴充的。並非所有的特性和功能都集成到語言核心。Python提供了豐富的API和工具,以便程序員能夠輕鬆地使用C語言、C++、Cython來編寫擴充模塊。Python編譯器本身也可以被集成到其它需要腳本語言的程序內。因此,很多人還把Python作為一種“膠水語言”(glue language)使用。使用Python將其他語言編寫的程序進行集成和封裝。在Google內部的很多項目,例如Google Engine使用C++編寫性能要求極高的部分,然後用Python或Java/Go調用相應的模塊。《Python技術手冊》的作者馬特利(Alex Martelli)說:“這很難講,不過,2004 年,Python 已在Google 內部使用,Google 召募許多 Python 高手,但在這之前就已決定使用Python,他們的目的是 Python where we can, C++ where we must,在操控硬件的場合使用 C++,在快速開發時候使用 Python。”

一些Python基礎,你都知道麼?(內含Python視頻教程)

Python 執行

Python在執行時,首先會將.py文件中的源代碼編譯成Python的byte code(字節碼),然後再由Python Virtual Machine(Python虛擬機)來執行這些編譯好的byte code。

Python 基本語法

Python的設計目標之一是讓代碼具備高度的可閱讀性。它設計時儘量使用其它語言經常使用的標點符號和英文單字,讓代碼看起來整潔美觀。

縮進

Python開發者有意讓違反了縮進規則的程序不能通過編譯,以此來強制程序員養成良好的編程習慣。並且Python語言利用縮進表示語句塊的開始和退出(Off-side規則),而非使用花括號或者某種關鍵字。增加縮進表示語句塊的開始,而減少縮進則表示語句塊的退出。縮進成為了語法的一部分。

控制語句

  • if語句,當條件成立時運行語句塊。經常與else, elif(相當於else if) 配合使用。
  • for語句,遍歷列表、字符串、字典、集合等迭代器,依次處理迭代器中的每個元素。
  • while語句,當條件為真時,循環運行語句塊。
  • try語句。與except,finally配合使用處理在程序運行中出現的異常情況。
  • class語句。用於定義類型。
  • def語句。用於定義函數和類型的方法。
  • pass語句。表示此行為空,不運行任何操作。
  • assert語句。用於程序調試階段時測試運行條件是否滿足。
  • with語句。Python2.6以後定義的語法,在一個場景中運行語句塊。比如,運行語句塊前加密,然後在語句塊運行退出後解密。
  • yield語句。在迭代器函數內使用,用於返回一個元素。自從Python 2.5版本以後。這個語句變成一個運算符。
  • raise語句。製造一個錯誤。
  • import語句。導入一個模塊或包。
  • from import語句。從包導入模塊或從模塊導入某個對象。
  • import as語句。將導入的對象賦值給一個變量。
  • in語句。判斷一個對象是否在一個字符串/列表/元組裡。

表達式

  • 主要的算術運算符與C/C++類似。+, -, *, /, //, **, ~, %分別表示加法或者取正、減法或者取負、乘法、除法、整除、乘方、取補、取餘。>>, <<表示右移和左移。&, |, ^表示二進制的AND, OR, XOR運算。>, <, ==, !=, <=, >=用於比較兩個表達式的值,分別表示大於、小於、等於、不等於、小於等於、大於等於。在這些運算符裡面~, |, ^, &, <<, >>必須應用於整數。
  • Python使用and, or, not表示邏輯運算。
  • is, is not用於比較兩個變量是否是同一個對象。
  • in, not in用於判斷一個對象是否屬於另外一個對象。
  • Python支持“列表推導式”(list comprehension),比如計算0-9的平方和:
sum(x * x for x in range(10))
285
  • Python使用lambda表示匿名函數。匿名函數體只能是表達式。比如:
add=lambda x, y : x + y
add(3,2)
5
  • Python使用y if cond else x表示條件表達式。意思是當cond為真時,表達式的值為y,否則表達式的值為x。相當於C++和Java裡的cond?y:x。
  • Python區分列表(list)和元組(tuple)兩種類型。list的寫法是[1,2,3],而tuple的寫法是(1,2,3)。可以改變list中的元素,而不能改變tuple。在某些情況下,tuple的括號可以省略。tuple對於賦值語句有特殊的處理。因此,可以同時賦值給多個變量,比如:
 x, y=1,2 #同時給x,y賦值
print(x,y)
1 2
# 特別地,可以使用以下這種形式來交換兩個變量的值:
x, y=y, x
print(x,y)
2 1
  • Python使用’(單引號)和"(雙引號)來表示字符串。
  • Python支持序列的切片處理

函數

Python的函數支持遞歸、默認參數值、可變參數,但不支持函數重載。為了增強代碼的可讀性,可以在函數後書寫“文檔字符串”(Documentation Strings,或者簡稱docstrings),用於解釋函數的作用、參數的類型與意義、返回值類型與取值範圍等。可以使用內置函數help()打印出函數的使用幫助。

對象的方法

對象的方法是指綁定到對象的函數。調用對象方法的語法是instance.method(arguments)。它等價於調用Class.method(instance, arguments)。當定義對象方法時,必須顯式地定義第一個參數,一般該參數名都使用self,用於訪問對象的內部數據。這裡的self相當於C++, Java裡面的this變量,但是我們還可以使用任何其它合法的參數名,比如this 和 mine 等,self與C++,Java裡面的this不完全一樣,它可以被看作是一個習慣性的用法,我們傳入任何其它的合法名稱都行。

"
一些Python基礎,你都知道麼?(內含Python視頻教程)

參考資料

  • 百度百科
  • 維基百科

整理了一些百度百科和維基百科的內容:

Python 簡介

Python(英國發音:/ˈpaɪθən/ 美國發音:/ˈpaɪθɑːn/), 是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum於 1989 年發明,第一個公開發行版發行於 1991 年。

Python 具有動態類型系統和自動內存管理,支持多種編程範式,包括面向對象、祈使、函數式編程和程序的樣式。它有一個大型和全面的標準庫。

Python 設計定位

Python的設計哲學是“優雅”、“明確”、“簡單”。Python開發者的哲學是“用一種方法,最好是隻有一種方法來做一件事”。在設計Python語言時,如果面臨多種選擇,Python開發者一般會拒絕花俏的語法,而選擇明確的沒有或者很少有歧義的語法。這些準則被稱為Python格言。在Python解釋器內運行import this可以獲得完整的列表。

Python開發人員儘量避開不成熟或者不重要的優化。一些針對非重要部位的加快運行速度的補丁通常不會被合併到Python內。所以很多人認為Python很慢。不過,根據二八定律,大多數程序對速度要求不高。在某些對運行速度要求很高的情況,Python設計師傾向於使用JIT技術,或者用使用C/C++語言改寫這部分程序。可用的JIT技術是PyPy。

Python是完全面向對象的語言。函數、模塊、數字、字符串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的複用性。Python支持重載運算符和動態類型。有兩個標準庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。

Python可能被粗略地分類為“腳本語言”(script language),而Python的支持者較喜歡稱它為一種高級動態編程語言,原因是“腳本語言”泛指僅作簡單程序設計任務的語言,如shellscript、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。

Python本身被設計為可擴充的。並非所有的特性和功能都集成到語言核心。Python提供了豐富的API和工具,以便程序員能夠輕鬆地使用C語言、C++、Cython來編寫擴充模塊。Python編譯器本身也可以被集成到其它需要腳本語言的程序內。因此,很多人還把Python作為一種“膠水語言”(glue language)使用。使用Python將其他語言編寫的程序進行集成和封裝。在Google內部的很多項目,例如Google Engine使用C++編寫性能要求極高的部分,然後用Python或Java/Go調用相應的模塊。《Python技術手冊》的作者馬特利(Alex Martelli)說:“這很難講,不過,2004 年,Python 已在Google 內部使用,Google 召募許多 Python 高手,但在這之前就已決定使用Python,他們的目的是 Python where we can, C++ where we must,在操控硬件的場合使用 C++,在快速開發時候使用 Python。”

一些Python基礎,你都知道麼?(內含Python視頻教程)

Python 執行

Python在執行時,首先會將.py文件中的源代碼編譯成Python的byte code(字節碼),然後再由Python Virtual Machine(Python虛擬機)來執行這些編譯好的byte code。

Python 基本語法

Python的設計目標之一是讓代碼具備高度的可閱讀性。它設計時儘量使用其它語言經常使用的標點符號和英文單字,讓代碼看起來整潔美觀。

縮進

Python開發者有意讓違反了縮進規則的程序不能通過編譯,以此來強制程序員養成良好的編程習慣。並且Python語言利用縮進表示語句塊的開始和退出(Off-side規則),而非使用花括號或者某種關鍵字。增加縮進表示語句塊的開始,而減少縮進則表示語句塊的退出。縮進成為了語法的一部分。

控制語句

  • if語句,當條件成立時運行語句塊。經常與else, elif(相當於else if) 配合使用。
  • for語句,遍歷列表、字符串、字典、集合等迭代器,依次處理迭代器中的每個元素。
  • while語句,當條件為真時,循環運行語句塊。
  • try語句。與except,finally配合使用處理在程序運行中出現的異常情況。
  • class語句。用於定義類型。
  • def語句。用於定義函數和類型的方法。
  • pass語句。表示此行為空,不運行任何操作。
  • assert語句。用於程序調試階段時測試運行條件是否滿足。
  • with語句。Python2.6以後定義的語法,在一個場景中運行語句塊。比如,運行語句塊前加密,然後在語句塊運行退出後解密。
  • yield語句。在迭代器函數內使用,用於返回一個元素。自從Python 2.5版本以後。這個語句變成一個運算符。
  • raise語句。製造一個錯誤。
  • import語句。導入一個模塊或包。
  • from import語句。從包導入模塊或從模塊導入某個對象。
  • import as語句。將導入的對象賦值給一個變量。
  • in語句。判斷一個對象是否在一個字符串/列表/元組裡。

表達式

  • 主要的算術運算符與C/C++類似。+, -, *, /, //, **, ~, %分別表示加法或者取正、減法或者取負、乘法、除法、整除、乘方、取補、取餘。>>, <<表示右移和左移。&, |, ^表示二進制的AND, OR, XOR運算。>, <, ==, !=, <=, >=用於比較兩個表達式的值,分別表示大於、小於、等於、不等於、小於等於、大於等於。在這些運算符裡面~, |, ^, &, <<, >>必須應用於整數。
  • Python使用and, or, not表示邏輯運算。
  • is, is not用於比較兩個變量是否是同一個對象。
  • in, not in用於判斷一個對象是否屬於另外一個對象。
  • Python支持“列表推導式”(list comprehension),比如計算0-9的平方和:
sum(x * x for x in range(10))
285
  • Python使用lambda表示匿名函數。匿名函數體只能是表達式。比如:
add=lambda x, y : x + y
add(3,2)
5
  • Python使用y if cond else x表示條件表達式。意思是當cond為真時,表達式的值為y,否則表達式的值為x。相當於C++和Java裡的cond?y:x。
  • Python區分列表(list)和元組(tuple)兩種類型。list的寫法是[1,2,3],而tuple的寫法是(1,2,3)。可以改變list中的元素,而不能改變tuple。在某些情況下,tuple的括號可以省略。tuple對於賦值語句有特殊的處理。因此,可以同時賦值給多個變量,比如:
 x, y=1,2 #同時給x,y賦值
print(x,y)
1 2
# 特別地,可以使用以下這種形式來交換兩個變量的值:
x, y=y, x
print(x,y)
2 1
  • Python使用’(單引號)和"(雙引號)來表示字符串。
  • Python支持序列的切片處理

函數

Python的函數支持遞歸、默認參數值、可變參數,但不支持函數重載。為了增強代碼的可讀性,可以在函數後書寫“文檔字符串”(Documentation Strings,或者簡稱docstrings),用於解釋函數的作用、參數的類型與意義、返回值類型與取值範圍等。可以使用內置函數help()打印出函數的使用幫助。

對象的方法

對象的方法是指綁定到對象的函數。調用對象方法的語法是instance.method(arguments)。它等價於調用Class.method(instance, arguments)。當定義對象方法時,必須顯式地定義第一個參數,一般該參數名都使用self,用於訪問對象的內部數據。這裡的self相當於C++, Java裡面的this變量,但是我們還可以使用任何其它合法的參數名,比如this 和 mine 等,self與C++,Java裡面的this不完全一樣,它可以被看作是一個習慣性的用法,我們傳入任何其它的合法名稱都行。

一些Python基礎,你都知道麼?(內含Python視頻教程)

類型

Python採用**動態類型系統**。在編譯的時候,Python不會檢查對象是否擁有被調用的方法或者屬性,而是直至運行時,才做出檢查。所以操作對象時可能會拋出異常。不過,雖然Python採用動態類型系統,它同時也是強類型的。Python禁止沒有明確定義的操作,比如數字加字符串。

與其它面嚮對象語言一樣,Python允許程序員定義類型。構造一個對象只需要像函數一樣調用類型即可,比如,自定義的Fish類型,使用Fish()。類型本身也是特殊類型type的對象(type類型本身也是type對象),這種特殊的設計允許對類型進行反射編程。

Python內置豐富的數據類型。與Java、C++相比,這些數據類型有效地減少代碼的長度。下面這個列表簡要地描述了Python內置數據類型(適用於Python 3.x):

類型(Type)描述例子str字符串'Wikipedia',"Wikipedia","""Spanning multiple lines"""bytes不可變字節序列b'Some ASCII', b"Some ASCII"unicodesUnicode字符串u'Hellolist可以包含多種類型的可改變的序列[4.0, 'string', True]tuple可以包含多種類型的不可改變的序列(4.0, 'string', True)set, frozenset與數學中集合的概念類似。無序的、每個元素唯一。{4.0, 'string', True},frozenset([4.0, 'string', True])dict一個可改變的由鍵值對組成的映射。{'key1': 1.0, 3: False}int精度不限的整數42float浮點數。精度與系統相關。3.1415927complex複數3+2.7jbool邏輯值。只有兩個值:真、假True,Falsebytearray可變字節序列bytearray(b'Some ASCII'),bytearray(b"Some ASCII"),bytearray([119, 105, 107, 105])

除了各種數據類型,Python語言還用類型來表示函數、模塊、類型本身、對象的方法、編譯後的Python代碼、運行時信息等等。因此,Python具備很強的動態性。

Python允許像數學的常用寫法那樣連著寫兩個比較運行符。比如a < b < c與a < b and b < c等價。C++的結果與Python不一樣,首先它會先計算a < b,根據兩者的大小獲得0或者1兩個值之一,然後再與c進行比較。

這裡給大家推薦一套Python入門到精通的全套視頻教程

領入門資料+規劃職業

有個Python福利只給你

本套教程Python+人工智能分為六大模塊,分別是Python基礎、Python全棧、Python爬蟲、數據分析、機器學習與機器學習項目實戰模塊。

轉發並關注小編,私信小編關鍵字“學習”即可免費領取!!!!

採用錄播課與直播課結合的方式,並配合助教答 疑、進度追蹤、作業輔導等服務,激發你的學習熱情,併為你的學習進度保駕護航。 以市場就業為導向,通過企業真實項目驅動,無縫對接就業出口,幫助你在短時間學習有價值 的知識、快速提升技能。

"
一些Python基礎,你都知道麼?(內含Python視頻教程)

參考資料

  • 百度百科
  • 維基百科

整理了一些百度百科和維基百科的內容:

Python 簡介

Python(英國發音:/ˈpaɪθən/ 美國發音:/ˈpaɪθɑːn/), 是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum於 1989 年發明,第一個公開發行版發行於 1991 年。

Python 具有動態類型系統和自動內存管理,支持多種編程範式,包括面向對象、祈使、函數式編程和程序的樣式。它有一個大型和全面的標準庫。

Python 設計定位

Python的設計哲學是“優雅”、“明確”、“簡單”。Python開發者的哲學是“用一種方法,最好是隻有一種方法來做一件事”。在設計Python語言時,如果面臨多種選擇,Python開發者一般會拒絕花俏的語法,而選擇明確的沒有或者很少有歧義的語法。這些準則被稱為Python格言。在Python解釋器內運行import this可以獲得完整的列表。

Python開發人員儘量避開不成熟或者不重要的優化。一些針對非重要部位的加快運行速度的補丁通常不會被合併到Python內。所以很多人認為Python很慢。不過,根據二八定律,大多數程序對速度要求不高。在某些對運行速度要求很高的情況,Python設計師傾向於使用JIT技術,或者用使用C/C++語言改寫這部分程序。可用的JIT技術是PyPy。

Python是完全面向對象的語言。函數、模塊、數字、字符串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的複用性。Python支持重載運算符和動態類型。有兩個標準庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。

Python可能被粗略地分類為“腳本語言”(script language),而Python的支持者較喜歡稱它為一種高級動態編程語言,原因是“腳本語言”泛指僅作簡單程序設計任務的語言,如shellscript、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。

Python本身被設計為可擴充的。並非所有的特性和功能都集成到語言核心。Python提供了豐富的API和工具,以便程序員能夠輕鬆地使用C語言、C++、Cython來編寫擴充模塊。Python編譯器本身也可以被集成到其它需要腳本語言的程序內。因此,很多人還把Python作為一種“膠水語言”(glue language)使用。使用Python將其他語言編寫的程序進行集成和封裝。在Google內部的很多項目,例如Google Engine使用C++編寫性能要求極高的部分,然後用Python或Java/Go調用相應的模塊。《Python技術手冊》的作者馬特利(Alex Martelli)說:“這很難講,不過,2004 年,Python 已在Google 內部使用,Google 召募許多 Python 高手,但在這之前就已決定使用Python,他們的目的是 Python where we can, C++ where we must,在操控硬件的場合使用 C++,在快速開發時候使用 Python。”

一些Python基礎,你都知道麼?(內含Python視頻教程)

Python 執行

Python在執行時,首先會將.py文件中的源代碼編譯成Python的byte code(字節碼),然後再由Python Virtual Machine(Python虛擬機)來執行這些編譯好的byte code。

Python 基本語法

Python的設計目標之一是讓代碼具備高度的可閱讀性。它設計時儘量使用其它語言經常使用的標點符號和英文單字,讓代碼看起來整潔美觀。

縮進

Python開發者有意讓違反了縮進規則的程序不能通過編譯,以此來強制程序員養成良好的編程習慣。並且Python語言利用縮進表示語句塊的開始和退出(Off-side規則),而非使用花括號或者某種關鍵字。增加縮進表示語句塊的開始,而減少縮進則表示語句塊的退出。縮進成為了語法的一部分。

控制語句

  • if語句,當條件成立時運行語句塊。經常與else, elif(相當於else if) 配合使用。
  • for語句,遍歷列表、字符串、字典、集合等迭代器,依次處理迭代器中的每個元素。
  • while語句,當條件為真時,循環運行語句塊。
  • try語句。與except,finally配合使用處理在程序運行中出現的異常情況。
  • class語句。用於定義類型。
  • def語句。用於定義函數和類型的方法。
  • pass語句。表示此行為空,不運行任何操作。
  • assert語句。用於程序調試階段時測試運行條件是否滿足。
  • with語句。Python2.6以後定義的語法,在一個場景中運行語句塊。比如,運行語句塊前加密,然後在語句塊運行退出後解密。
  • yield語句。在迭代器函數內使用,用於返回一個元素。自從Python 2.5版本以後。這個語句變成一個運算符。
  • raise語句。製造一個錯誤。
  • import語句。導入一個模塊或包。
  • from import語句。從包導入模塊或從模塊導入某個對象。
  • import as語句。將導入的對象賦值給一個變量。
  • in語句。判斷一個對象是否在一個字符串/列表/元組裡。

表達式

  • 主要的算術運算符與C/C++類似。+, -, *, /, //, **, ~, %分別表示加法或者取正、減法或者取負、乘法、除法、整除、乘方、取補、取餘。>>, <<表示右移和左移。&, |, ^表示二進制的AND, OR, XOR運算。>, <, ==, !=, <=, >=用於比較兩個表達式的值,分別表示大於、小於、等於、不等於、小於等於、大於等於。在這些運算符裡面~, |, ^, &, <<, >>必須應用於整數。
  • Python使用and, or, not表示邏輯運算。
  • is, is not用於比較兩個變量是否是同一個對象。
  • in, not in用於判斷一個對象是否屬於另外一個對象。
  • Python支持“列表推導式”(list comprehension),比如計算0-9的平方和:
sum(x * x for x in range(10))
285
  • Python使用lambda表示匿名函數。匿名函數體只能是表達式。比如:
add=lambda x, y : x + y
add(3,2)
5
  • Python使用y if cond else x表示條件表達式。意思是當cond為真時,表達式的值為y,否則表達式的值為x。相當於C++和Java裡的cond?y:x。
  • Python區分列表(list)和元組(tuple)兩種類型。list的寫法是[1,2,3],而tuple的寫法是(1,2,3)。可以改變list中的元素,而不能改變tuple。在某些情況下,tuple的括號可以省略。tuple對於賦值語句有特殊的處理。因此,可以同時賦值給多個變量,比如:
 x, y=1,2 #同時給x,y賦值
print(x,y)
1 2
# 特別地,可以使用以下這種形式來交換兩個變量的值:
x, y=y, x
print(x,y)
2 1
  • Python使用’(單引號)和"(雙引號)來表示字符串。
  • Python支持序列的切片處理

函數

Python的函數支持遞歸、默認參數值、可變參數,但不支持函數重載。為了增強代碼的可讀性,可以在函數後書寫“文檔字符串”(Documentation Strings,或者簡稱docstrings),用於解釋函數的作用、參數的類型與意義、返回值類型與取值範圍等。可以使用內置函數help()打印出函數的使用幫助。

對象的方法

對象的方法是指綁定到對象的函數。調用對象方法的語法是instance.method(arguments)。它等價於調用Class.method(instance, arguments)。當定義對象方法時,必須顯式地定義第一個參數,一般該參數名都使用self,用於訪問對象的內部數據。這裡的self相當於C++, Java裡面的this變量,但是我們還可以使用任何其它合法的參數名,比如this 和 mine 等,self與C++,Java裡面的this不完全一樣,它可以被看作是一個習慣性的用法,我們傳入任何其它的合法名稱都行。

一些Python基礎,你都知道麼?(內含Python視頻教程)

類型

Python採用**動態類型系統**。在編譯的時候,Python不會檢查對象是否擁有被調用的方法或者屬性,而是直至運行時,才做出檢查。所以操作對象時可能會拋出異常。不過,雖然Python採用動態類型系統,它同時也是強類型的。Python禁止沒有明確定義的操作,比如數字加字符串。

與其它面嚮對象語言一樣,Python允許程序員定義類型。構造一個對象只需要像函數一樣調用類型即可,比如,自定義的Fish類型,使用Fish()。類型本身也是特殊類型type的對象(type類型本身也是type對象),這種特殊的設計允許對類型進行反射編程。

Python內置豐富的數據類型。與Java、C++相比,這些數據類型有效地減少代碼的長度。下面這個列表簡要地描述了Python內置數據類型(適用於Python 3.x):

類型(Type)描述例子str字符串'Wikipedia',"Wikipedia","""Spanning multiple lines"""bytes不可變字節序列b'Some ASCII', b"Some ASCII"unicodesUnicode字符串u'Hellolist可以包含多種類型的可改變的序列[4.0, 'string', True]tuple可以包含多種類型的不可改變的序列(4.0, 'string', True)set, frozenset與數學中集合的概念類似。無序的、每個元素唯一。{4.0, 'string', True},frozenset([4.0, 'string', True])dict一個可改變的由鍵值對組成的映射。{'key1': 1.0, 3: False}int精度不限的整數42float浮點數。精度與系統相關。3.1415927complex複數3+2.7jbool邏輯值。只有兩個值:真、假True,Falsebytearray可變字節序列bytearray(b'Some ASCII'),bytearray(b"Some ASCII"),bytearray([119, 105, 107, 105])

除了各種數據類型,Python語言還用類型來表示函數、模塊、類型本身、對象的方法、編譯後的Python代碼、運行時信息等等。因此,Python具備很強的動態性。

Python允許像數學的常用寫法那樣連著寫兩個比較運行符。比如a < b < c與a < b and b < c等價。C++的結果與Python不一樣,首先它會先計算a < b,根據兩者的大小獲得0或者1兩個值之一,然後再與c進行比較。

這裡給大家推薦一套Python入門到精通的全套視頻教程

領入門資料+規劃職業

有個Python福利只給你

本套教程Python+人工智能分為六大模塊,分別是Python基礎、Python全棧、Python爬蟲、數據分析、機器學習與機器學習項目實戰模塊。

轉發並關注小編,私信小編關鍵字“學習”即可免費領取!!!!

採用錄播課與直播課結合的方式,並配合助教答 疑、進度追蹤、作業輔導等服務,激發你的學習熱情,併為你的學習進度保駕護航。 以市場就業為導向,通過企業真實項目驅動,無縫對接就業出口,幫助你在短時間學習有價值 的知識、快速提升技能。

一些Python基礎,你都知道麼?(內含Python視頻教程)

"
一些Python基礎,你都知道麼?(內含Python視頻教程)

參考資料

  • 百度百科
  • 維基百科

整理了一些百度百科和維基百科的內容:

Python 簡介

Python(英國發音:/ˈpaɪθən/ 美國發音:/ˈpaɪθɑːn/), 是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum於 1989 年發明,第一個公開發行版發行於 1991 年。

Python 具有動態類型系統和自動內存管理,支持多種編程範式,包括面向對象、祈使、函數式編程和程序的樣式。它有一個大型和全面的標準庫。

Python 設計定位

Python的設計哲學是“優雅”、“明確”、“簡單”。Python開發者的哲學是“用一種方法,最好是隻有一種方法來做一件事”。在設計Python語言時,如果面臨多種選擇,Python開發者一般會拒絕花俏的語法,而選擇明確的沒有或者很少有歧義的語法。這些準則被稱為Python格言。在Python解釋器內運行import this可以獲得完整的列表。

Python開發人員儘量避開不成熟或者不重要的優化。一些針對非重要部位的加快運行速度的補丁通常不會被合併到Python內。所以很多人認為Python很慢。不過,根據二八定律,大多數程序對速度要求不高。在某些對運行速度要求很高的情況,Python設計師傾向於使用JIT技術,或者用使用C/C++語言改寫這部分程序。可用的JIT技術是PyPy。

Python是完全面向對象的語言。函數、模塊、數字、字符串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的複用性。Python支持重載運算符和動態類型。有兩個標準庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。

Python可能被粗略地分類為“腳本語言”(script language),而Python的支持者較喜歡稱它為一種高級動態編程語言,原因是“腳本語言”泛指僅作簡單程序設計任務的語言,如shellscript、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。

Python本身被設計為可擴充的。並非所有的特性和功能都集成到語言核心。Python提供了豐富的API和工具,以便程序員能夠輕鬆地使用C語言、C++、Cython來編寫擴充模塊。Python編譯器本身也可以被集成到其它需要腳本語言的程序內。因此,很多人還把Python作為一種“膠水語言”(glue language)使用。使用Python將其他語言編寫的程序進行集成和封裝。在Google內部的很多項目,例如Google Engine使用C++編寫性能要求極高的部分,然後用Python或Java/Go調用相應的模塊。《Python技術手冊》的作者馬特利(Alex Martelli)說:“這很難講,不過,2004 年,Python 已在Google 內部使用,Google 召募許多 Python 高手,但在這之前就已決定使用Python,他們的目的是 Python where we can, C++ where we must,在操控硬件的場合使用 C++,在快速開發時候使用 Python。”

一些Python基礎,你都知道麼?(內含Python視頻教程)

Python 執行

Python在執行時,首先會將.py文件中的源代碼編譯成Python的byte code(字節碼),然後再由Python Virtual Machine(Python虛擬機)來執行這些編譯好的byte code。

Python 基本語法

Python的設計目標之一是讓代碼具備高度的可閱讀性。它設計時儘量使用其它語言經常使用的標點符號和英文單字,讓代碼看起來整潔美觀。

縮進

Python開發者有意讓違反了縮進規則的程序不能通過編譯,以此來強制程序員養成良好的編程習慣。並且Python語言利用縮進表示語句塊的開始和退出(Off-side規則),而非使用花括號或者某種關鍵字。增加縮進表示語句塊的開始,而減少縮進則表示語句塊的退出。縮進成為了語法的一部分。

控制語句

  • if語句,當條件成立時運行語句塊。經常與else, elif(相當於else if) 配合使用。
  • for語句,遍歷列表、字符串、字典、集合等迭代器,依次處理迭代器中的每個元素。
  • while語句,當條件為真時,循環運行語句塊。
  • try語句。與except,finally配合使用處理在程序運行中出現的異常情況。
  • class語句。用於定義類型。
  • def語句。用於定義函數和類型的方法。
  • pass語句。表示此行為空,不運行任何操作。
  • assert語句。用於程序調試階段時測試運行條件是否滿足。
  • with語句。Python2.6以後定義的語法,在一個場景中運行語句塊。比如,運行語句塊前加密,然後在語句塊運行退出後解密。
  • yield語句。在迭代器函數內使用,用於返回一個元素。自從Python 2.5版本以後。這個語句變成一個運算符。
  • raise語句。製造一個錯誤。
  • import語句。導入一個模塊或包。
  • from import語句。從包導入模塊或從模塊導入某個對象。
  • import as語句。將導入的對象賦值給一個變量。
  • in語句。判斷一個對象是否在一個字符串/列表/元組裡。

表達式

  • 主要的算術運算符與C/C++類似。+, -, *, /, //, **, ~, %分別表示加法或者取正、減法或者取負、乘法、除法、整除、乘方、取補、取餘。>>, <<表示右移和左移。&, |, ^表示二進制的AND, OR, XOR運算。>, <, ==, !=, <=, >=用於比較兩個表達式的值,分別表示大於、小於、等於、不等於、小於等於、大於等於。在這些運算符裡面~, |, ^, &, <<, >>必須應用於整數。
  • Python使用and, or, not表示邏輯運算。
  • is, is not用於比較兩個變量是否是同一個對象。
  • in, not in用於判斷一個對象是否屬於另外一個對象。
  • Python支持“列表推導式”(list comprehension),比如計算0-9的平方和:
sum(x * x for x in range(10))
285
  • Python使用lambda表示匿名函數。匿名函數體只能是表達式。比如:
add=lambda x, y : x + y
add(3,2)
5
  • Python使用y if cond else x表示條件表達式。意思是當cond為真時,表達式的值為y,否則表達式的值為x。相當於C++和Java裡的cond?y:x。
  • Python區分列表(list)和元組(tuple)兩種類型。list的寫法是[1,2,3],而tuple的寫法是(1,2,3)。可以改變list中的元素,而不能改變tuple。在某些情況下,tuple的括號可以省略。tuple對於賦值語句有特殊的處理。因此,可以同時賦值給多個變量,比如:
 x, y=1,2 #同時給x,y賦值
print(x,y)
1 2
# 特別地,可以使用以下這種形式來交換兩個變量的值:
x, y=y, x
print(x,y)
2 1
  • Python使用’(單引號)和"(雙引號)來表示字符串。
  • Python支持序列的切片處理

函數

Python的函數支持遞歸、默認參數值、可變參數,但不支持函數重載。為了增強代碼的可讀性,可以在函數後書寫“文檔字符串”(Documentation Strings,或者簡稱docstrings),用於解釋函數的作用、參數的類型與意義、返回值類型與取值範圍等。可以使用內置函數help()打印出函數的使用幫助。

對象的方法

對象的方法是指綁定到對象的函數。調用對象方法的語法是instance.method(arguments)。它等價於調用Class.method(instance, arguments)。當定義對象方法時,必須顯式地定義第一個參數,一般該參數名都使用self,用於訪問對象的內部數據。這裡的self相當於C++, Java裡面的this變量,但是我們還可以使用任何其它合法的參數名,比如this 和 mine 等,self與C++,Java裡面的this不完全一樣,它可以被看作是一個習慣性的用法,我們傳入任何其它的合法名稱都行。

一些Python基礎,你都知道麼?(內含Python視頻教程)

類型

Python採用**動態類型系統**。在編譯的時候,Python不會檢查對象是否擁有被調用的方法或者屬性,而是直至運行時,才做出檢查。所以操作對象時可能會拋出異常。不過,雖然Python採用動態類型系統,它同時也是強類型的。Python禁止沒有明確定義的操作,比如數字加字符串。

與其它面嚮對象語言一樣,Python允許程序員定義類型。構造一個對象只需要像函數一樣調用類型即可,比如,自定義的Fish類型,使用Fish()。類型本身也是特殊類型type的對象(type類型本身也是type對象),這種特殊的設計允許對類型進行反射編程。

Python內置豐富的數據類型。與Java、C++相比,這些數據類型有效地減少代碼的長度。下面這個列表簡要地描述了Python內置數據類型(適用於Python 3.x):

類型(Type)描述例子str字符串'Wikipedia',"Wikipedia","""Spanning multiple lines"""bytes不可變字節序列b'Some ASCII', b"Some ASCII"unicodesUnicode字符串u'Hellolist可以包含多種類型的可改變的序列[4.0, 'string', True]tuple可以包含多種類型的不可改變的序列(4.0, 'string', True)set, frozenset與數學中集合的概念類似。無序的、每個元素唯一。{4.0, 'string', True},frozenset([4.0, 'string', True])dict一個可改變的由鍵值對組成的映射。{'key1': 1.0, 3: False}int精度不限的整數42float浮點數。精度與系統相關。3.1415927complex複數3+2.7jbool邏輯值。只有兩個值:真、假True,Falsebytearray可變字節序列bytearray(b'Some ASCII'),bytearray(b"Some ASCII"),bytearray([119, 105, 107, 105])

除了各種數據類型,Python語言還用類型來表示函數、模塊、類型本身、對象的方法、編譯後的Python代碼、運行時信息等等。因此,Python具備很強的動態性。

Python允許像數學的常用寫法那樣連著寫兩個比較運行符。比如a < b < c與a < b and b < c等價。C++的結果與Python不一樣,首先它會先計算a < b,根據兩者的大小獲得0或者1兩個值之一,然後再與c進行比較。

這裡給大家推薦一套Python入門到精通的全套視頻教程

領入門資料+規劃職業

有個Python福利只給你

本套教程Python+人工智能分為六大模塊,分別是Python基礎、Python全棧、Python爬蟲、數據分析、機器學習與機器學習項目實戰模塊。

轉發並關注小編,私信小編關鍵字“學習”即可免費領取!!!!

採用錄播課與直播課結合的方式,並配合助教答 疑、進度追蹤、作業輔導等服務,激發你的學習熱情,併為你的學習進度保駕護航。 以市場就業為導向,通過企業真實項目驅動,無縫對接就業出口,幫助你在短時間學習有價值 的知識、快速提升技能。

一些Python基礎,你都知道麼?(內含Python視頻教程)

一些Python基礎,你都知道麼?(內含Python視頻教程)

"

相關推薦

推薦中...