【python】编程语言入门经典100例--29

  1 #题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。


代码:


  2 
  3 li = list(input('输入一个不多于5位的正整数:'))
  4 n = len(li)
  5 print('这个正整数是%d位数'%n)
  6 i = 0
  7 
  8 def order(li,n,i):
  9     if i <= n-1-i:
 10          tmp = li[i]
 11          li[i] = li[n-1-i]
 12          li[n-1-i] = tmp
 13          i += 1
 14          order(li,n,i)
 15     return(li)
 16      
 17 print(order(li,n,i))


运行结果:


[root@HK code_100]# python code_29.py 
输入一个不多于5位的正整数:25689
这个正整数是5位数
['9', '8', '6', '5', '2']
[root@HK code_100]# 
[root@HK code_100]# python code_29.py 
输入一个不多于5位的正整数:487
这个正整数是3位数
['7', '8', '4']
[root@HK code_100]#


代码解释:


 # 偷懒,参考实例27
 
  2 
  3 li = list(input('输入一个不多于5位的正整数:'))
  4 n = len(li)
  5 print('这个正整数是%d位数'%n)
  6 i = 0
  7 
  8 def order(li,n,i):
  9     if i <= n-1-i:
 10          tmp = li[i]
 11          li[i] = li[n-1-i]
 12          li[n-1-i] = tmp
 13          i += 1
 14          order(li,n,i)
 15     return(li)
 16      
 17 print(order(li,n,i))


你可能感兴趣的:(题目,正整数,5位)