1. 程式人生 > >python 學習筆記(2)資料型別1 (bool型, 數值型別,lists列表型別)

python 學習筆記(2)資料型別1 (bool型, 數值型別,lists列表型別)

宣告:本文系本人學習python3總結,如有侵權等,請及時告知;

一、型別預覽

1. Booleans[布林型]或為 True[真]或為 False[假]。

2. Numbers[數值型]可以是 Integers[整數]( 2)、

Floats[浮點數](1.1  1.2)、Fractions[分數](1/2 

2/3);甚至是 Complex Number[複數]。

3. Strings[字串型]是 Unicode 字元序列,例如:一份

HTML 文件。

4. Bytes[位元組]和 Byte Arrays[位元組陣列],例如一份

JPEG 影象檔案。

5. Lists[列表]是值的有序序列。

6. Tuples[元組]是有序而不可變的值序列。  7.  Sets[集合]是裝滿無序值的包裹。

8. Dictionaries[字典]是鍵值對的無序包裹。

當然,還有更多的型別。在 Python 中一切均為物件,因此存在

 module[模組]、 function[函式]、 class[類]、 method

[方法]、 file[檔案]甚至 compiled code[已編譯程式碼]這

樣的型別。您已經見過這樣一些例子:模組的 name、函式的

docstrings 等等。將學到的包括《類與迭代器》中的 Classes

[類],以及《檔案》中的 Files[檔案]。

二分類概述

python

type()用來探測某個變數為什麼型別

可使用 isinstance() 函式判斷某個值或變數是否為給定某個型別。

  eg: if type(1)=int:

       print("1 is int type")

   1、bool布林型

     bool 無非就是真(True)與假(False

在學C的都知道真是1,假是0,非零即是真;

python中,True+True = 2; Ture+False = 1;bool只是用來表徵真假的一種方式,不要在意那麼多。無論何種語言,記住非零即真

   2、數值型別

python支援的數值型別。int.float,long等;

     python

C一樣也會有隱式規則;

將一個 int 與一個 float 相加將得到一個 float Python  int 強制轉換為 float 以進行法運算;然後返回一個 float 型別的結果。

           1)通過呼叫float() 函式,可以顯示地將 int 強制轉換為 float

          2)通過呼叫 int()  float 強制轉換為 int 

依次輪推,你懂得。

          3  int() 將進行取整,而不是四捨五入。

         4)對於負數,int() 函式朝著 0 的方法進行取整。它是個真正的取整(截斷)函式,而不是 floor[地板]函式。

          5)浮點數精確到小數點後 15 位。

          6)  整數可以任意大。

3、基本運算子

          1  / 運算子執行浮點除法。即便分子和分母都是 int,它也返回一個 float 浮點數。

         2 // 運算子執行古怪的整數除法。如果結果為正數,可將其視為朝向小數位取整(不是四捨五入),但是要小心這一點。

          3)當整數除以負數, // 運算子將結果朝著最近的整數“向上”四捨五入。從數學角度來說,由於 −6  −5 要小,它是“向下”四捨五入,如果期望將結果取整為 −5,它將會誤導你。

          4 // 運算子並非總是返回整數結果。如果分子或者分母是  float,它仍將朝著最近的整數進行四捨五入,但實際返回的值將會是 float 型別。

          5 **  運算子的意思是“計算冪”,112 結果為 121 

          6運算子給出了進行整除之後的餘數。11 除以 2 結果為 5 以及餘數 1,因此此處的結果為 1

4、python中的分數運算;

  import fractions

  fractions.Fraction(分子,分母);定義一個分數

       1)為啟用 fractions 模組,必先引入 fractions 模組。

         2)為定義一個分數,建立一個 Fraction 物件並傳入分子和分母。

         3)可對分數進行所有的常規數學計算。運算返回一個新的 Fraction 物件。2 * (1/3) = (2/3)  

         4Fraction 物件將會自動進行約分。(6/4) = (3/2)  

         5)在杜絕建立以零為分母的分數方面,Python 有著良好的敏感性。

5、數學方法

  import math

         1)math 模組中有一個代表π的常量,表示圓的周長與直徑之比率(圓周率)。

         2)math 模組包括了所有的基本三角函式,包括:sin() cos()tan() 及像 asin() 這樣的變體函式。

         3)然而要注意的是 Python 並不支援無限精度。tan(π / 4) 將返回 1.0,而不是 0.99999999999999989

         4)注意:

1)分數也可在布林型別上下文環境中使用。無論 n 為何值Fraction(0, n) 為假。所有其它分數為真。

2)非零浮點數為真; 0.0 為假。請千萬小心這一點!如果有輕微的四捨五入偏差(正如在前面小節中看到的那樣,這並非不可能的事情),那麼 Python 將測試 0.0000000000001 而不是 0 ,並將返回一個 True 值。

6、列表

列表類似C語言的陣列,但是要比陣列強大和靈活,對成員型別沒有要求。列表中可以巢狀列表。

  1)定義列表

   list=[[1,2,3,"test",'hello'],3,5,"world"]

         (1)列表取值:

         list[0],list[1]...list[n]

         list[-1],list[-2]...list[-n]

         list[-n]= list[len(list) - n]

        (2)列表切片

         list[x:y]

從列表的第x個元素到第y個元素之間的成員;

         (3)列表操作

                      a. 增加成員

                     list + [1,2,3]

                    list.append('x'),向列表中增加一個成員;

                     list.append([]/{}/())向列表中增加一個列表,字典,元組等;

                     list.insert(n,member)向第n個位置增加一個成員;

                     list.extend([1,2,3,4])將次列表併入list中;

                   b.檢索列表

                   list.count('name'):統計某一個成員'name'在列表中的次數

                   list.index('name'):   列出某一個成員'name'在列表中的位置

注意:

是合法的列表索引值。如果 index() 方法返回‐1,可能會導致調整過程變得不那麼有趣!

                   c.刪除列表成員

                   list.pop(n):不帶引數彈出列表中最後一個成員,帶引數則彈出第n個成員

                   list.remove('name'):刪除列表中存在的第一個'name'的成員

                   dellist[n]: 刪除列表中第n個成員

         (4)列表真假判斷

                   a.在布林型別上下文環境中,空列表為假值。

                   b.任何至少包含一個上元素的列表為真值。

                   c.任何至少包含一個上元素的列表為真值。元素的值無關緊要。