2013-11-22 65 views
-5

我想我需要使用for循環,但我無法用頭包住它。我應該如何使用它?在不使用內置函數的情況下讀取字符串的長度?

即使你給我一個提示,我也很感激。謝謝

+9

爲什麼!?請以所有神聖的名義告訴我們爲什麼*! – 2013-11-22 10:28:46

+7

@LutzHorn:因爲它是作業。 –

+1

是的,這是一項功課。但是學習編程語言和創造一些東西是我的激情,我喜歡它。我在這裏問我的問題不僅僅是爲了完成作業。我在這裏問我的問題,因爲我想學習!我渴望知識! – Rakanoth

回答

8

沒有涉及內建功能。簡單的for循環。

length = 0 
for char in myString: 
    length += 1 
print(length) 

如果你只是不應該使用len,你可以使用它。

print(sum(1 for char in myString)) 

或者您可以使用reduce這樣

from functools import reduce 
print(reduce(lambda x, y: x + 1, myString, 0)) 
+2

這應該是python 3,修復它.. –

+1

@KDawG謝謝:)修復'print'語句 – thefourtheye

+1

還要記住,您需要從'functools'導入'reduce()'。 –

3

使用itertools另一種選擇:

>>> from itertools import count, dropwhile 
>>> s = "abc" 
>>> next(dropwhile(lambda i: s[i:], count())) 
3 

(是的,我知道這有二次運行。)

+0

沒有內建允許。 – martineau

+0

謝謝:)是的,內置插件是不允許的。 – Rakanoth

相關問題