2012-05-04 33 views
1

我閱讀Mark Pilgrim的深入Python 3,並已在這個現在凝視了大約一個小時:http://getpython3.com/diveintopython3/strings.html#common-string-methodsPython的String類計數()方法

>>> s = '''Finished files are the re- 
... sult of years of scientif- 
... ic study combined with the 
... experience of years.''' 
>>> s.lower().count('f') 
6 

在多線串爲例進行說明,我不明白爲什麼s.lower().count('f')返回6而不是3.我已經確認它返回6.當然,朝聖者甚至在他的筆記中指出它實際上是6,但並不能解釋爲什麼。

有人可以幫我嗎?謝謝!

+2

四個答案?和12總upvotes? (至今)。爲了數f? – alan

+0

我會讓你高興,@alan! –

回答

5

在該陳述中有6個f。你可能會無意中忽略了「的」。

(確實,這是awidelycirculatedbrainteaser)。

+1

你是對的!這是一個什麼樣的思想。 –

+0

我的意思是,通常我會承認只是一個白癡,但朝聖者的評論,使得它看起來像許多人不會計算「的」... –

+2

「的」中的「f」聽起來像「v」,所以如果你通過他們的聲音在精神上文字(多數人),你會想念他們。 – kindall

5

成品...文件... ...的...的...科學的...

2

˚F inished ˚F爾斯是結果Ø˚F年Øf scienti f ic study結合經驗o f年。

'lower'使得整個字符串都是小寫字母,因此請確保包含「Finished」之類的內容。

4

這可能是一個有幫助的視覺效果。

Six f's

相關問題