0
我正在從頭學習Python。同樣,我正在使用書'How To Think Like a Computer Scientist'。與字符分類相同的交易的第7.12節和它列出3種不同的確定 給定字符(CH)是否是小寫的方式,如下所示:以下哪一個是檢查角色案例的最快方法?
1.
def is_lower(ch):
return string.find(string.lowercase, ch) != -1
2.
def is_lower(ch):
return ch in string.lowercase
3.
def is_lower(ch):
return 'a' <= ch <= 'z'
我在想這些,其中,W應該是最快的處理。我只關心處理時間,而不是內存需求。我猜測它是第三個,因爲在前兩種情況下,整個字符串可能需要處理直到結束,以查明字符是否存在,而在第三種情況下,只有兩個比較是足夠的,並且整個字符串不需要處理。那麼我的猜測是對的?
你爲什麼不測試它們?運行1,000,000次每個功能並測量已用時間。 – deepmax
你不用什麼內置的'ch.islower()'?不需要寫你自己的。 –
@deepmax我還沒有達到那個水平,我可以準確地測量某個函數執行所花費的時間。理論上,我確實可以多次運行不同的方式,然後測量差異,但在這種情況下,處理器也應該在所有3次測試運行期間同樣空閒,而這對我來說實際上是不可能的。 – Hiren