2017-03-04 34 views

回答

0

你在第五行有一個額外的逗號。 更改您的代碼此

hi = 567 
z = len(str(hi)) 
his = str(hi) 
for i in range(z - 1, -1 ,-1): 
    x = his[i] 
    print x, 
1

只需使用''.joinreversed

>>> ''.join(reversed(str(hi))) 
'765' 
+0

它打印3次... –

+0

@JohnFinkelstein如果您使用該解決方案,則不需要循環。 :) – MSeifert

+0

@MSeifet有沒有辦法使用'x'而不是'revers'?像:'''.join(x(str(hi)))'? –

2

試試這個:

print int(str(hi)[::-1]) 

編輯:一些業績比較基準相比reversedjoin解決方案:

沒有int轉換:

>>> timeit.timeit("str(hi)[::-1]", setup='hi=567') 
0.33620285987854004 
>>> timeit.timeit("''.join(reversed(str(hi)))", setup='hi=567') 
0.8570940494537354 

隨着int轉換:

>>> timeit.timeit('int(str(hi)[::-1])', setup='hi=567') 
0.6945221424102783 
>>> timeit.timeit("int(''.join(reversed(str(hi))))", setup='hi=567') 
1.2800707817077637 
+0

btw:'[:: - 1]'部分是做什麼的? –

+0

這是扭轉字符串。對於像這樣的str操作非常方便:D – Szabolcs

+0

奇怪......它工作正常,但現在它打印3次... –