Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
102 views
in Technique[技术] by (71.8m points)

How to reverse a given number in python using just for loop

i did it in while loop but couldn't do it in for loop

my code using while loop :

x=int(input("enter a number: "))
i=0
while(x>0):
    remainder=x%10
    i=(i*10)+remainder
    x//=10
print(i)
question from:https://stackoverflow.com/questions/65640864/how-to-reverse-a-given-number-in-python-using-just-for-loop

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

In your example your using arithmetic, but why not convert to a string to make life easier?

x = int(input("enter a number: "))
result = ""
for char in str(x)[::-1]:
  result += char
print(result)

Note that [::-1] means "iterate backwards" and that if your number ends with zeros, they'll appear at the start of the reversed string. If you want, you can trim them with lstrip:

print(result.lstrip("0"))

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...