python整数逆序输出_利用Python实现倒序任意整数
這是很早以前學習C時候做過的一個練習題,題目的要求大概是把用戶輸入的三位數(shù)倒序輸出,比如說用戶輸入123,然后程序應該輸出的結果是321。如果遇到用戶輸入100,那么程序應該輸出1。然后我給擴展一下,這個程序來適應于三位數(shù)以上的或者三位數(shù)以下的。
那么遇到這個問題,我首先的思路就是想辦法把用戶輸入的數(shù)字給他拆開,然后放在列表里邊。然后拿出來重新拼接一下就好了。所以我寫好的前邊的代碼如下:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
number = int(raw_input("please input a number:"))
numlist = []
while 1:
if number == 0:
break
numlist.append(number % 10)
number = number / 10
這個時候我們打印numlist的值可以得到一個長度和數(shù)字位數(shù)相等的列表。
然后是拼接的過程,這里我想起來Python的高階函數(shù)reduce(),這個函數(shù)的第一個參數(shù)接收一個函數(shù)用于處理列表,第二個參數(shù)接收的是要處理的列表。
意思是這樣:
reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
所以處理函數(shù)這么寫的:
def f(x, y):
return x * 10 + y
最終的代碼:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
number = int(raw_input("please input a number:"))
numlist = []
result = 0
while 1:
if number == 0:
break
numlist.append(number % 10)
number = number / 10
def f(x, y):
return x * 10 + y
print reduce(f, numlist)
ps:轉載請注明文章出處。
總結
以上是生活随笔為你收集整理的python整数逆序输出_利用Python实现倒序任意整数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: haproxy配置代理tomcat和ng
- 下一篇: jquery select change