Python 入門之基礎資料型別 (Elementary Data Type)

來源:互聯網
上載者:User

為什麼我要學習Python這門語言呢?其實很簡單,我想拓展技術面的同時,嘗試更多的方向,可能最後會不了了之,誰知道呢?有可能的話,我會向爬蟲和資料分析這個方向走。所以也就開始了我的Python學習之旅。當然,前提是我的本職工作Java也要前進。

 

因為有Java的基礎,所以入門Python還是比較簡單的,但我我不想草草了事,所以,會刻意慢一點。說到Python開發環境的安裝和工具的使用,我選擇的就是Python3.6, 而目前的工具,因為在初期,所以選擇了Python內建的IDLE,那就來總結一下我這幾天的學習情況吧!對了,我選擇的教程就是Python基礎教程3。白天需要工作,所以也就是在下班的時候抽時間看一下書。

 

就像是Java中的8種基礎資料型別 (Elementary Data Type)一樣,Python 中也有一些基本的資料類型,那今天就來說說 Python 中的基本的資料結構有哪些。

  1. 列表
  2. 元組
  3. 字串
  4. 字典

其中前面3種統稱為序列,為什麼強行把前3類歸在一起呢?因為它們有共同的操作。其中包括索引,切片,相加,相乘和成員檢查(即 in 操作符)。 

 

一個個的分析,Python 中的索引從 0 開始遞增,而且可以使用 -1 定位到最後一個元素,依次向左遞減。切片就很進階了,就是可以訪問固定索引範圍內的值,比方說 s = 'hello' s[1:3] = 'el' 注意一點就行,索引值是含前不含後的。這在 Python 中很常見。切片還有很多比較秀的操作,類如 s[-3:-1] = 'll' (注意剛剛說過的含前不含後)s[:] = 'hello' s[1:] = 'ello' s[:3] = 'hel',這些比較常用的操作吧,還有切片支援指定步長,預設步長為 1 s[::2] = 'hlo'其餘的我也不說,根本記不住好吧!學的時候有個印象就好。序列相加就是直接加呀一個例子:[1,2,3]+[6] = [1,2,3,6]; 乘法類似,'h'*3 = 'hhh' 成員資格就是值在不在序列中使用in 來進行判斷。舉例s = ['A','B','C']; 'A' in s = True 以上只是對Python序列的操作做一個簡單的說明。還有一些常用的方法,求長度,最大值,最小值分別使用len() max() min() 理解起來應該不存在問題。序列共同的操作說完之後,我們來看看每個都如何使用。

 

首先說什麼是列表,列表就是將資料使用[ ] 括起來,這就是是列表了,而元組就是將資料使用( ) 括起來,字串使用的是' ' or " " 這樣一總結,就感覺清爽了很多嘛。要問為什麼會使用這些符號,人家就是這樣定義的,你能咋滴!具體的使用我不想說太多,不然有種在抄書的感覺啊!要知道,列表有很多的內建方法可以是使用,記不住沒關係,可以使用命令dir(list) 這樣就得到了列表中的所有方法,知道方法不會用方法啊,還有一個命令就是help(list.methodName)這樣就可以得到解釋了。然而這是英文的,還是不懂,那就百度去吧。即使現在說了有哪些方法,我相信,不使用的話,還是會忘的一乾二淨。所以我就不多說了。總之要記住,有很多很多的方法你想到沒想到的可能都已經存在了!

 

元組和字串是不可變的,而元組和列表又很相似,列表可變,元組不可變,這是區別,而且元組使用的特別少,但是還是有用武之地的,目前沒見到而已,還需要修鍊修鍊。這就是一個元組(1,2,3) 注意元組使用的是括弧,中間逗號隔開,但是有一個要注意,若是元組只有一個元素,那麼一定要加一個逗號,像這樣1, or (1,) 不然誰知道你是在表達數字 1 還是元組(1,)呢 。

 

字串我們應該很熟悉了,說一點,關於字串的格式問題,我們可以使用 %s 來設定格式,形如這樣 name = 'David'; print('Hello , %s' %name ) 這樣就可以把 name 這個字串填充到需要填充的字串中。%s 稱為轉換說明符,我理解的就是占坑。還有一種是使用 format 方法'{0},{2} and {1}'.format('frist','second','third') 結果: first,third and second 注意,這就是一種有預謀的占坑了,可以指定位置,當然也可以不指定,那就是按照順序來。字串的方法更是多到令人髮指的地步,沒關係,那就一點點的使用吧,我寫方法名你們來猜吧 center find join lower upper split title strip lstrip rstrip translate isspace isdigit isupper ... 簡直了,你們看著辦吧!

 

上面介紹的都可以使用索引來操作的資料類型,但是總是需要以一種資料類型來描述映射關係的吧,於是字典就應運而生了!也就是我們常說的 key-value 索引值對。那字典是怎麼表示的呢?這樣phonebook = {'David':'1234','Lucy':'9876'}你看,就是一個大括弧+冒號+逗號的組合就建立了一個字典,這符號真是多呀,回憶一下列表用[ ] ,元組用( ),字串用' ' or " " ,字典用{ } 所以說要善於總結啊,這樣記得才能牢呀。字典有個類叫dict ,幹嘛用的,就是建立字典用的,類似的列表是list 元組是tuple 。翻來覆去的比較,總會記得住,理解的清楚。字典也有些基本的操作,又到了看方法名的時候len(dict) || dict[key] || dict[key] = value || del dict[key] || key in dict || dict-表示一個字典類型的變數,key-字典的鍵,value-為鍵賦的值 另外要注意的是,字典的索引值必須是不可變的。這在 Java 整理的部分已經說過了 ~

 

還有要介紹一下字典的相關的方法,真的好煩,不想寫了。就簡單一點 dir(dict) 搞定,方法名都可以看到了。方法的使用 help(dict.methodName) 也搞定。感覺用字典來格式化字串這個功能很有用,單獨說一下,使用方法 format_map(dict) 就可以將字典中的值填充到字串中,感覺很給力,舉例:

data = {'a':'I','b':'You'}
'{a} love {b}'.format_map(data) = 'I love You'

就是這樣,變相的表白啊。

總結一下,目前只是瞭解到 Python 的基礎資料型別 (Elementary Data Type)和基本用法,後面再學習語句之後就可以進行簡單的邏輯編程了 。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.