1. 程式人生 > >紮實基礎深入篇(三):對列表趕盡殺絕

紮實基礎深入篇(三):對列表趕盡殺絕

前言:本文筆記來自於《python程式設計從入門到實踐》,Eric Mathhes著。

 

程式碼改變世界。

 

在進入正題之前,我們來聊聊python程式設計師的那些事吧!

當你學習python越來越深入的時候,你會逐漸編寫越來越長的程式,有必要了解一些程式碼格式設定的約定。

要成為專業的程式設計師,應從現在開始就遵循這些指南,以養成良好的習慣。

我們需要了解一個東西:python改進提案,也就是PEP8,這將是我們需要遵循的一個著名指南。

1.建議每級縮排都使用四個空格,即可提高可讀性,又留下足夠的多級縮排空間。建議不要混合使用製表符和空格,這樣會讓python感到迷惑。

2.建議每行都不超過80字元。如果過長的話,讀起來不夠便捷,也違反了python語言本身的特點:簡潔美觀。

3.空行不要濫用,雖然不會影響程式碼的執行,但會影響程式碼的可讀性。

4.學會註釋,養成一個良好的註釋習慣,使別人讀你的程式碼更加容易,這有利於專案的合作。

5.更多PEP8格式設定指南請訪問:https://python.org/dev/peps/pep-0008/

 

永遠不要忽視上面的話,這些指南將影響一個python程式設計師的一生,良好的程式碼風格極為重要。

 

在上一篇文章中,我留了三個作業,相信大家都已經很好的完成了:

建立一個列表,其中包含3-30內能被3整除的數字。

建立一個列表,其中包含1-10中奇數的立方數

建立一個列表,其中包含1-20的奇數。

 

我們來看第一道題,其實這道題很簡單,不必在整除上下功夫,你可以將它換成另外一種形式,在3到30中,從3開始,每過3個數都是可以被3整除的數,這樣是不是清晰多了?

aaa=[ ] for a in range(3,31,3): aaa.append(a) print(aaa) 輸出結果: [3, 6, 9, 12, 15, 18, 21, 24, 27, 30]   這當然是普通的方法,換成列表解析的方式自然是這樣: aaa=[a for a in range(3,31,3)] print(aaa)   那麼剩下兩道題我直接省略普通的方法,我直接寫出列表解析方式的答案: aaa=[a**3 for a in range(1,10,2)] print(aaa)   aaa=[a for a in range(1,20,2)] print(aaa)   好了。以上就是三道題的答案,其實很簡單。那麼,我們知道,列表還有一種操作方式,那就是排序。這兒,我將介紹排序和臨時排序兩種方式。   一.排序 使用方法sort()對列表進行永久性排序,按字母順序排列。 aa=['pitaya', 'boom', 'pear', 'orange', 'banana', 'apple'] aa.sort() print(aa) 輸出結果: ['apple', 'banana', 'boom', 'orange', 'pear', 'pitaya'] 注意,當有兩個元素的首字母相同時,比較各元素的第二個字母,以此類推。   如果想要倒著排序,按倒著的字母順序排列,給括號傳遞一個引數,reverse=True aa=['pitaya', 'boom', 'pear', 'orange', 'banana', 'apple'] aa.sort(reverse=True) print(aa) 輸出結果: ['pitaya', 'pear', 'orange', 'boom', 'banana', 'apple']   二.臨時排序 要保留列表元素原來的排列順序,同時以特定的順序呈現他們,可使用函式sorted()。 正著列印:sorted() 倒著列印:sorted(reverse=True)   當然了,如果你不知道列表有多少個元素,可以使用len()可快速獲悉列表的長度: aa=['pitaya', 'boom', 'pear', 'orange', 'banana', 'apple'] print(len(aa)) 輸出結果: 6     好了,關於列表我就講到這兒啦,希望大家能及時鞏固列表以及元組的相關知識,這些基礎知識很重要。 我來總結一下相關的知識吧! ( ),元組,不可變,tuple   [  ]  ,列表,可變,list   {  }  ,字典,??,dict 字典就是我們即將學到的內容啦~~~~