我正在创建一个python脚本,打印出'99瓶啤酒‘的整首歌,但颠倒了过来。我唯一不能反转的是数字,它是整数,而不是字符串。
这是我的完整脚本,
def reverse(str):
return str[::-1]
def plural(word, b):
if b != 1:
return word + 's'
else:
return word
def line(b, ending):
print b or reverse('No more'), plural(reverse('bottle'), b), reverse(ending)
for i in range(99, 0, -1):
line(i, "of beer on the wall")
line(i, "of beer"
print reverse("Take one down, pass it around")
line(i-1, "of beer on the wall \n")
我知道我的reverse函数接受一个字符串作为参数,但是我不知道如何接受一个整数,或者稍后在脚本中如何反转这个整数。
发布于 2014-07-25 18:23:34
不将数字转换为字符串:
def reverse_number(n):
r = 0
while n > 0:
r *= 10
r += n % 10
n /= 10
return r
print(reverse_number(123))
发布于 2014-07-25 18:14:23
像这样的东西?
>>> x = 123
>>> str(x)
'123'
>>> str(x)[::-1]
'321'
发布于 2019-01-23 12:57:59
最好的方法是
x=12345
a=str(x)[::-1]\\ In this process i have create string of inverse of integer (a="54321")
a=int(a) \\ Here i have converted string a in integer
或者一行代码是
a=int(str(x)[::-1]))
https://stackoverflow.com/questions/24953303
复制相似问题