python 每天進步一點點(4)

一 ?Python彩蛋import this

Python有個彩蛋,比如在交互模式下輸入import this,便會看到如下語句,這是Python的一些思想哲學以及Python的理念。

Beautiful is better than ugly.

1,美比丑好

Explicit is better than implicit.

2,顯式(清晰、明確)比隱式(含蓄、暗示)好

Simple is better than complex.

3,簡單比復雜好

Complex is better than complicated.

4,復雜比糾纏好

(complex為常用詞,表示由一些互相聯系、互相作用的部分組成,需要有相當的研究、知識和經驗才能理解、操作或處理。

complicated為正式用詞,表示由于組成部分太多、互相關系太復雜而不能馬上理解,預期比comlex更重。)

Flat is better than nested.

5,平坦(扁平)比嵌套好

Sparse is better than dense.

6,稀疏比稠密好

Readability counts.

7,可讀性很重要

Special cases aren't special enough to break the rules.

8,特例不應破壞原則

Although practicality beats purity.

9,雖然實用性勝過純粹性

Errors should never pass silently.

10,錯誤不應被默默放過

Unless explicitly silenced.

11,除非明確要求默默放過錯過

In the face of ambiguity, refuse the temptation to guess.

12,在含糊(不明確)面前,拒絕猜測(推測)

There should be one-- and preferably only one --obvious way to do it.

13,應該有一個明顯(顯而易見)的方案完成任務,而且最好只有一個明顯的方案

Although that way may not be obvious at first unless you're Dutch.

14,雖然起初那個方案也許并不明顯,除非你是Python之父

Although that way may not be obvious at first unless you're Dutch.

雖然起初那個方案也許并不明顯,除非你是Python之父

(這里的荷蘭人,應該是指Python之父Guido van Rossum。

我對這里出現的“Python之父”的理解是,一、編程功底足夠好,二、對python足夠熟悉。)

Now is better than never.

15,現在做比永遠不做好

Although never is often better than *right* now.

16,雖然永遠不做通常好過馬上就做

Although never is often better than *right* now.

雖然永遠不做通常好過馬上就做

(參考別人的翻譯,這里的“馬上就做”是指做之前少思索、少規劃)

If the implementation is hard to explain, it's a bad idea.

17,如果很難解釋一個實現,這個實現不是個好方案

If the implementation is easy to explain, it may be a good idea.

18,如果容易解釋一個實現,這個實現也許是個好方案

Namespaces are one honking great idea -- let's do more of those!

19,命名空間是非常好的理念,我們應多多使用

? ? 看完以后雖說是python之禪(“禪”這字代表的是東方哲學用在這里 ? ? 太恰當了,一字解所有,漢字的魅力,非常感謝這本書的譯者。)其實它可以給我們在思考和做任何事情起到起到指導性。

二 列表是什么

? ? ?列表是一系列按?特定 順序排列的元素組成,可以將 任何??東西加入 列表,其中的元素 可以沒任何關系。

? ? ?在Python中,用方括號( [ ] ) 來表示列表,并用逗號來分割其中的元素。比如下面這個例子中包含幾種自行車

bicycles = ['trek', 'cannondale', 'redline', 'specialized']

二 . 1.1 訪問列表元素

列表是有序集合,因此要訪問列表的任何元素,只需要講該元素的位置或索引告訴Python即可,要訪問列表元素,可指出列表民稱,在指出元素索引,并將其放在方括號內。

例如 下面的代碼從列表 biccycles 中提取第一輛自行車

bicycles = ['trek', 'cannondale', 'redline', 'specialized']

print(bicycles)

print(bicycles[0].upper()) ? (1)

? ? (1)處演示了列表元素的語法。當你請求獲取列表元素時,python只返回該元素,而不包括方括號和引號,還可以對任何列表元素調用第二章介紹的字符串方法。例如,可以使用方法 upper() 讓元素‘trek'的格式更簡潔。( 我們在第二章學了三種修改字符串大小寫的方法,分別是:title() ,upper(),lower() ? )。

print(bicycles[0].title())

print(bicycles[0].upper())

print(bicycles[0].lower())

結果顯示會是

Trek

TREK

trek

二.1.2 索引從0而不是從一開始

? ? ?在python中第一個列表元素的索引為0,而不是1。在大多數編程中都是如此,這與列表操作的底層實現相關。如果結果出乎意料,請看是否犯了簡單的差一錯誤。

? ? 第二個列表元素的索引為1 ,要訪問列表中的任何元素,都可以將其位置減1,并將結果作為索引。

? ? python中還為訪問最后一個列表元素提供了一種特殊語法。通過將索引指定為 -1 ,可以讓python返回最后一個列表元素。這種語法是為了在不知道 ?列表長度 ?的情況下訪問最后的元素。這種約定也適用于其它負數索引, 索引-2返回 倒數 第二個列表元素,索引-3返回 倒數 第三個列表元素,以此類推。

二.1,3 使用列表中的各個值

message = "My first bicycle was a " + bicycles[0].title() + "."

print message

從上面的例子可以看出我們使用bicycles[0]的值生成了一個句子 并列表中提取了第一款自行車。輸出是一個簡單的句子,其中包含列表中的第一款自行車:

My first bicycle was a Trek.


1.4 for i in range(len(bicycles)):

? ? ? ? ? ? print(bicycles[i]," => ",i)

其中 for i in range:

range方法返回一個數組,range(stop),range(start, stop[, step])兩種形式均可,比如你想打印1-99,可以

for i ?in range(1, 100):

? ? ? ?print i

當然可以用這個遍歷一個list

for i in range(len(list_1)):

print list_1 [ i ]

for循環語句是Python中的一個循環控制語句,任何有序的序列對象內的元素都可以遍歷,比如字符串、列表、元組等可迭代對象。

Python中for循環的一般格式:第一行是要先定義一個賦值目標(迭代變量),和要遍歷(迭代)的對像;首行后面是要執行的語句塊。

for目標in對像:

? ? ? print賦值目標

Python2.x中range()函數會返回一個列表,返回的對象便可以用for循環進行遍歷。下面的例子中,for循環對range()返回的列表進行遍歷并打印。

for i in range(1,5):

? ? print ?i,

# ?1 ?2 ?3 ?4

Python 中 for i in range() 中 i 的意義

i表示遍歷了一個循環中的所有元素

i只是習慣性寫法,你寫成a/b/c/d任何名稱都可以

但在沒有具體對象的時候,一般統一用i

關于python 的range()函數的用法請參考下列網址和第四章。

http://www.cnblogs.com/buro79xxd/archive/2011/05/23/2054493.html

一下跳到第四章這次作業跨度太大

? ?

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • http://python.jobbole.com/85231/ 關于專業技能寫完項目接著寫寫一名3年工作經驗的J...
    燕京博士閱讀 7,628評論 1 118
  • Python 是一種相當高級的語言,通過 Python 解釋器把符合語法的程序代碼轉換成 CPU 能夠執行的機器碼...
    Python程序媛閱讀 1,942評論 0 3
  • 今天學了個知識點:1.如何編寫注釋,該編寫什么樣的注釋。2.python之禪。3.列表是什么。4.訪問列表元素。5...
    一日歌閱讀 513評論 1 6
  • @貳拾貳畫生 感謝簡明Python教程 輸入輸出 輸入:raw_input string = raw_input(...
    貳拾貳畫生閱讀 2,641評論 4 21
  • 在我小時候 我極力裝得像個大人 當我已經不再是小孩的時候 我又希望像個孩子 —————— 防沉迷真的沒有了 一時還...
    哥尼卡布閱讀 145評論 2 0