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

    程序分析:学会分解出每一位数。

    程序源代码:

#!/usr/bin/python
# -*- coding: UTF-8 -*- x = int(raw_input("请输入一个数:\n"))
a = x / 10000
b = x % 10000 / 1000
c = x % 1000 / 100
d = x % 100 / 10
e = x % 10 if a != 0:
print "5 位数:",e,d,c,b,a
elif b != 0:
print "4 位数:",e,d,c,b,
elif c != 0:
print "3 位数:",e,d,c
elif d != 0:
print "2 位数:",e,d
else:
print "1 位数:",e

    以上实例输出结果为:

请输入一个数:
23459
5 位数: 9 5 4 3 2
请输入一个数:
3472
4 位数: 2 7 4 3
#!/usr/bin/python
# -*- coding: UTF-8 -*- print( '请输入大于10的数字:' )
n=input()
x=[]
i=0;
while(n!=0):
x.append(n%10)
i+=1
n/=10
print( '该数有 %d 位\n' %i )
print( '逆序为:\n')
print( x[::] )

    输出实例:

请输入大于10的数字:
12345
该数有 5 位 逆序为: [5, 4, 3, 2, 1]
#!/usr/bin/python
# -*- coding: UTF-8 -*- print '输入大于10的数字:'
n=input()
x=str(n)
for i in range(len(x)-1,-1,-1):
print x[i], # , 号设置不换行

    测试输出结果:

输入大于10的数字:
12345
5 4 3 2 1
#!/usr/bin/python
# -*- coding: UTF-8 -*- print( '请输入大于10的数字:' )
a =input()
if (len(str(a)) > 0) and (len(str(a)) <= 5) :
print "%s 是 %d 位数" %(a, len(str(a)))
newstr = str(a)[::-1]
print newstr
for i in newstr:
print i
#!/usr/bin/python
# -*- coding: UTF-8 -*- def output(num,l):
    if l == 0:
        return
    print (num[l-1]),
    output(num,l-1) num = raw_input('输入小于5位正整数 :' )
l = len(num)
output(num,l)
print '\n长度为: %d' % l

    Python3 下使用列表的 reverse 方法:

#!/usr/bin/env python3

num = list(input('输入一个最多5位的数字:'))
print(len(num))
num.reverse()
for i in range(len(num)):
print(num[i], end='')
#!/usr/bin/python3
# coding:utf-8 s = str(input())
def fun(m):
if len(m) == 1:
return m[0]
else:
return (m[len(m) - 1] + fun(m[:(len(m) - 1)]))
if len(s) > 5:
print("输入数字超过限定位数,输入无效")
else:
print('数位:%s\n输入的数字:%s\n逆序数字:%s' % (len(s), s, fun(s)))
#!/usr/bin/python
# coding:utf-8 arr=[]
def out_num(n):
length = len(str(n))
print "%d位数"%length
for i in range(1, length+1):
arr.append((n % (10**i))/10**(i-1))
print arr
out_num(245984)
#!/usr/bin/env python
# -*- coding: UTF-8 -*- import sys s = 12345
s = str(s)[::-1]
print '%d 位数' % len(s)
for i in range(len(s)):
sys.stdout.write(s[i]+' ')

    Python3 测试实例:

# coding:utf-8
num=int(input("请输入一个正整数:"))
def fn(s):
if len(s)==1:
return(s[0])
else:
a=s[-1]
s=s[:-1]
return(a+fn(s)) while 1:
if num<=0 or len(str(num))>5:
num=int(input("输入错误,请重新输入:"))
else:
num=str(num)
print()
print("它是%d位数" % len(num))
print("逆序打印:",fn(num))
break
#!/usr/bin/python
# -*- coding: UTF-8 -*- def num(strl):
l = len(str(strl))
lis = []
for i in range(l):
x = strl % 10
strl /= 10
lis.append(x)
print "长度为:{0}, \n逆序为:{1}".format(l,''.join(str(x) for x in lis) )
num(123)

    Python3 下测试:

#!/usr/bin/python3

x=input('请输入一个数:\n')
a = len(x)
print('这是一个{}位数'.format(a))
b = -1
while a != 0:
a -= 1
if b == -1:
print(x[-1:],end=' ')
b=b-1
else :
print(x[b:b+1],end=' ')
b=b-1

    Python3 下测试:

#!/usr/bin/python3

def backn(n):
ls = str(n); s = len(ls)
ls = ls[s-1:0:-1] + ls[0]
return ls, s
#测试:
backn(123456) #输出:(['654321'], 6)
#!/usr/bin/python
# -*- coding: UTF-8 -*- num1=int(input("Please input a int <10000:"))
for i in range(4,1,-1):
    if num1>10**i:
        print(i+1)
        break list1=[]
for j in range(i,-1,-1):
    list1.append(int(num1/(10**j)))
    num1=num1%(10**j)
for k in range(i,-1,-1):
    print(list1[k])

    Python3 下测试:

number = 12344
print("数字%d," % number, end="")
n = 0
result = ""
while number > 0:
result += str(number % 10)
number //= 10
n += 1
print("是%d位数, 逆序: %d" % (n, int(result)))

主要内容就是数字操作。如果感觉不错的话请多多点赞支持哦。。。

  原文链接:https://blog.csdn.net/luyaran/article/details/80074827

python2.7练习小例子(二十六)的更多相关文章

  1. python2.7练习小例子(十六)

    16):题目:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数.     程序分析:利用 while 或 for 语句,条件为输入的字符不为 '\n'.     程序源代码: #!/u ...

  2. python2.7练习小例子(十二)

        12):题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数" ...

  3. python2.7练习小例子(十)

        10):古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?     程序分析:兔子的规律为数列1,1 ...

  4. python2.7练习小例子(十八)

    19):题目:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数.      #!/usr/bin/python # -*- ...

  5. python2.7练习小例子(十五)

        15):题目:输出指定格式的日期.     程序分析:使用 datetime 模块.     程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...

  6. python2.7练习小例子(十四)

        14):题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示.     程序分析:程序分析:(a>b)?a:b这 ...

  7. python2.7练习小例子(十九)

        19):题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? #!/usr/bin/python # -*- codi ...

  8. 微信小程序把玩(二十六)navigator组件

    原文:微信小程序把玩(二十六)navigator组件 navigator跳转分为两个状态一种是关闭当前页面一种是不关闭当前页面.用redirect属性指定. 主要属性: wxml <naviga ...

  9. JAVA之旅(二十六)——装饰设计模式,继承和装饰的区别,LineNumberReader,自定义LineNumberReader,字节流读取操作,I/O复制图片

    JAVA之旅(二十六)--装饰设计模式,继承和装饰的区别,LineNumberReader,自定义LineNumberReader,字节流读取操作,I/O复制图片 一.装饰设计模式 其实我们自定义re ...

  10. Web 前端开发人员和设计师必读精华文章【系列二十六】

    <Web 前端开发精华文章推荐>2014年第5期(总第26期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

随机推荐

  1. Oracle日志组添加冗余文件和日志组

    rac中需要指定thread添加日志组RAC:alter database add logfile thread 1 group 1('+DATA/irac/redo01_1.log','+DATA/ ...

  2. 如何读写json文件

    代码如下: import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io. ...

  3. Jmeter启动报错:unable to access jarfile ApacheJmeter.jar error 原因:下载的src包没有这个jar包,需下载binary包

    安装好jdk并配置了环境变量,下载Jmeter包解压启动jemter.bat提示 unable to access jarfile ApacheJmeter.jar error 原因: 从官网 htt ...

  4. DateTime小综合

    实现效果: 关键知识: 1>DateTime类的ToString()方法: 2>DateTime类的IsLeapYear(); 3>DateTime类的DaysInMomth(); ...

  5. 2018.10.5 hibernate导入约束,在Eclipse的xml文件实现自动提示

    打开Java Resources/Libraries/hibernate-core-5.3.1.Final.jar/org.hibernate/hibernate-mapping-3.0.dtd(hi ...

  6. Android学习笔记_17_Intent匹配规则(隐式意图)

    Android基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent (意图) ,Intent提供了一种通用的消息系统,它允许在你的应用程序与其它的应用程序间传递Intent来执行 ...

  7. 【题解】洛谷P1262 间谍网络 (强连通分量缩点)

    洛谷P1262:https://www.luogu.org/problemnew/show/P1262 思路 一看题目就知道是强连通分量缩点 当图中有强连通分量时 将其缩点 我们可以用dfn数组判断是 ...

  8. 对象的比较与排序(三):实现IComparable<T>和IComparer<T>泛型接口

    来源:http://www.cnblogs.com/eagle1986/archive/2011/12/06/2278531.html 1:比较和排序的概念 比较:两个实体类之间按>,=,< ...

  9. c语言描述的双向链表的基本操作

    #include<stdio.h> #include<stdlib.h> #define ok 1 #define error 0 typedef int Status; ty ...

  10. Docker官方文档翻译2

    转载请标明出处: https://blog.csdn.net/forezp/article/details/80158062 本文出自方志朋的博客 容器 准备工作 安装Docker,版本为1.13或者 ...