2016-10-04 1 views
0

Привет, ребята, может кто-нибудь объяснить, почему мой код печатает назад?For-Loop с позициями

s='william' 
r='' 
for p in range(0,len(s)): 
    r=s[p]+r 
    print r 

Результат выглядит следующим образом: W

IW

Liw

lliW

illiW

ailliW

mailliW

Я не понимаю, почему эта программа печатает это назад. Может ли кто-нибудь объяснить, как работает эта программа?

+0

Попробуйте использовать 'r = r + s [p]' –

ответ

0

Вы добавляете r в конец строки каждый раз.

В первый раз вокруг: г = ш + ''

во второй раз: г = я + W (в этом случае ш г от первой итерации)

В третий раз вокруг: г = г + IW (г теперь IW со второй итерации)

Редактировать:

Это будет печатать уилльям

s='william' 
r='' 
for p in range(0,len(s)): 
    r= r + s[p] 
    print(r) 
+0

Получил благодарность! – jnkim0715