Python 如何将此循环结果打印为立即序列(如单个数字)?

Python 如何将此循环结果打印为立即序列(如单个数字)?,python,Python,这是我的循环: hi = 567 z = len(str(hi)) his = str(hi) for i in range(z - 1, -1 ,-1): x = his[i], print x, 我得到的是: ('7',) ('6',) ('5',) 有没有办法做到这一点: 765 谢谢大家! 第5行有一个额外的逗号。 将您的代码更改为此 hi = 567 z = len(str(hi)) his = str(hi) for i in range(z - 1, -1 ,

这是我的循环:

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

('7',) ('6',) ('5',)
有没有办法做到这一点:

765

谢谢大家!

第5行有一个额外的逗号。 将您的代码更改为此

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

试试这个:

print int(str(hi)[::-1])
编辑:与反向和联接解决方案相比的一些性能基准:

无整数转换:

>>> timeit.timeit("str(hi)[::-1]", setup='hi=567')
0.33620285987854004
>>> timeit.timeit("''.join(reversed(str(hi)))", setup='hi=567')
0.8570940494537354
>>> timeit.timeit('int(str(hi)[::-1])', setup='hi=567')
0.6945221424102783
>>> timeit.timeit("int(''.join(reversed(str(hi))))", setup='hi=567')
1.2800707817077637
使用整数转换:

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

结果应该是整数还是字符串?或者打印它是重要的部分,不管是什么类型?顺便问一下,[::-1]部分做什么?它是反转字符串。对于这样的str操作非常方便:Dstrange。。。它工作得很好,但现在它打印了3次…打印了哪3次?@JohnFinkelstein,这代替了循环,而不是在循环中。它打印了3次…@JohnFinkelstein如果你使用这种解决方案,你就不再需要循环了@MSeifet有没有一种方法可以使用x而不是相反的?比如:.joinxstrhi?@JohnFinkelstein我不明白。你怎么了?x应该是什么?