Python的基礎文法

來源:互聯網
上載者:User

標籤:動態   基礎語   字串   類型轉換   浮點數   float   ber   指定   ima   

資料類型

  在現實中,會根據事物的不同表現,進而可以進行相應的分類。例如,當去超市購物時,超市會根據商品

的不同特徵分類:食品類,日常用品類,家用電器類……在學數學時,也可以對數值進行分類:整數,小數,

分數,複數……。同樣,在Python中,也可以根據資料的不同特徵,對數值進行不同的分類。

在Python中,資料可以分為如下類型:

  數實值型別

    整數類型(int)

    浮點類型(float)

    複數類型(complex)

  布爾類型(bool)

  序列類型

    列表(list)

    元組(tuple)

    字串(str)

    位元組(bytes)

  映射類型(dict)

  集合類型(set)

  其他內建類型

鴨子類型 

  在Python中,嚴格來說,變數是不具有類型的,變數的類型完全取決於其所關聯的物件類型,這與其他

語言的差別較大(C,Java等)。因此,常習慣的稱Python的類型為“鴨子類型”,這是一種動態類型的體現。

說明:

  1、由於變數必須要關聯一個具體的對象,才能確定變數的類型。因此,在定義變數時,不能只給出變數

     的名字,必須要同時也給出變數所關聯的對象。

  2、python2中還支援長整數類型(Long),在python3中取消。

整數類型

  整數類型(int)是最常使用的類型。支援四種進位的表示

    二進位(使用0b或0B首碼)

    八進位(使用0o或0O首碼)

    十進位(無首碼)

    十六進位(使用0x或0X首碼,10 ~ 15使用a ~ f或A ~ F表示) 

  進位轉換

    可以調用相應的函數,來對四種進位之間進行轉換。

    bin() 其他進位轉換成二進位

    oct()  其他進位轉換成八進位

    int() 其他進位轉換成十進位

    hex() 其他進位轉換成十六進位  

   分隔字元

      當數值較大時(尤其是二進位),對程式的可讀性會造成影響,此時,可以在數值之間使用

    一個_進行分隔,從而提高程式的可讀性(Python3.6)。

 布爾類型

    布爾類型(bool)表示的是一種條件的判斷,具有兩個值:True與False。其中,True表示條件成立,

  即為“真”,而False表示條件不成立,即為“假”。布爾類型是整數類型的子類型。實際上,True就是1,

  False就是0。因而,也可以使用布爾類型參與數學上的運算,與使用1與0參與運算的結果是一樣的。

 浮點類型

    浮點類型(float)就是數學上的小數類型。例如:1.0,-2.5等,都是浮點類型。在進位表示上,浮點類

  型僅支援十進位表示(這點不同於整數類型)。除了常規的表示方式外,浮點類型也可以使用數學上科學計

  數法的形式表示,例如:    

    1.5e30

  說明:

    十進位的整數類型不能使用0開頭,但是浮點類型可以以0開頭。

 浮點類型的特殊值 

    浮點類型具有兩個特殊值:NaN(Not A Number)與Infinity(無窮大),其中無窮大又可分為正無窮

  (+Infinity)與負無窮(-Infinity)。可以通過float函數來獲得這些值。  

   NaN有一個特徵,就是自己不等於自己,因此,不能通過==來判斷一個數值是不是NaN。

 浮點數據類型的不精確性  

    在使用浮點類型時,需要留意,浮點類型在電腦中僅是近似的儲存,浮點類型是不精確的。因此,要避

  免進行如下的操作:

    1、避免數量級相差很大的浮點數之間進行運算。

    2、避免進行等量的比較。

  decimal 的使用

    考慮到浮點類型的不確定性,因此,如果需要進行精確計算時,可以使用decimalmo模組中的Decimal類

  來實現,該類提供精確的浮點計算。  

    此外,也可以指定Decimal的計算精度,即計算結果最多保留的有效數字位元,預設為28位有效數字。

 複數類型  

   Python中的複數類型(complex)類似於數學上的複數。含有虛部(使用j或J尾碼)的數值為複數類型。

    例如:

      3 + 5j,-2 - 3j(數學中虛部尾碼為i)。

      複數分為實部與虛部兩個部分,可以通過real與imag屬性分別擷取複數的實部與虛部的值。

  類型轉換

    可以通過type函數擷取變數的類型,準確的講,應該是變數所關聯的對象的類型。

  類型轉換函式

    python提供了一些轉換函式,可以在不同的類型之間進行類型轉換。

     int(value)      

      將數實值型別或字串轉換為整數(int)類型。如果沒有參數,返回0。

     float(value)

      將數實值型別或字串轉換成浮點(float)類型。如果沒有參數,返回0。

     complex(real, imag)

      根據實部和虛部(可選)建立一個複數。如果沒有參數,返回0j。

       bool(value)

      參數為真時,返回True,否則返回False。

  注意:

    1、儘管可以使用轉換函式進行類型轉換,但並非任意兩個類型之間都是能夠進行轉換的。

      例如,複數類型就不能夠通過int或float轉換為整數或浮點類型。  

    2、此外,int函數還可以提供第二個參數,指定解析轉換時,使用的進位。此時,第一個參數

      需要是字串類型(或位元組等類型),不能是數實值型別。例如:

      int("300",16)

      則會根據16進位來解析300,最終函數返回的結果為768,而不是300。如果沒有指定第

      二個參數,則預設為十進位。

  

Python的基礎文法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.