2017-04-12 69 views
0
def reverse(text): 
    y = "" 
    for i in text: 
     y = i + y 
    return y 

該函數如何返回輸入的反向字符串? 我似乎無法理解這個概念。該功能如何工作? (反向字符串)

+3

嘗試在循環中打印'i'和'y'並自己查看。 – Matthias

+1

'i'('text'的每個字符)被添加到* y的前面*(每個前面已經看到的'text'字符) –

+1

嘗試使用例如http://pythontutor.com/(或者只是一張紙和一支筆),然後逐步查看會發生什麼。 – jonrsharpe

回答

1

儘管我並沒有特別瞭解Python,但顯然反轉是通過以前向方式遍歷輸入的各個字符來實現的。之前,結果變量y被初始化。在迭代期間,單個字符被插入結果變量的開始,這意味着第一個字符被定位在結尾,最後一個字符被附加在結果變量的開頭。最後,返回結果變量。

0

y以空字符串開頭。然後從左向右迭代文本字符,並將每個字符添加爲y的後綴。換句話說,你從左到右迭代文本,並從右到左將它添加到y