python2.7练习小例子(二十六)
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练习小例子(二十六)的更多相关文章
- python2.7练习小例子(十六)
16):题目:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. 程序分析:利用 while 或 for 语句,条件为输入的字符不为 '\n'. 程序源代码: #!/u ...
- python2.7练习小例子(十二)
12):题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数" ...
- python2.7练习小例子(十)
10):古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 程序分析:兔子的规律为数列1,1 ...
- python2.7练习小例子(十八)
19):题目:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数. #!/usr/bin/python # -*- ...
- python2.7练习小例子(十五)
15):题目:输出指定格式的日期. 程序分析:使用 datetime 模块. 程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...
- python2.7练习小例子(十四)
14):题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示. 程序分析:程序分析:(a>b)?a:b这 ...
- python2.7练习小例子(十九)
19):题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? #!/usr/bin/python # -*- codi ...
- 微信小程序把玩(二十六)navigator组件
原文:微信小程序把玩(二十六)navigator组件 navigator跳转分为两个状态一种是关闭当前页面一种是不关闭当前页面.用redirect属性指定. 主要属性: wxml <naviga ...
- JAVA之旅(二十六)——装饰设计模式,继承和装饰的区别,LineNumberReader,自定义LineNumberReader,字节流读取操作,I/O复制图片
JAVA之旅(二十六)--装饰设计模式,继承和装饰的区别,LineNumberReader,自定义LineNumberReader,字节流读取操作,I/O复制图片 一.装饰设计模式 其实我们自定义re ...
- Web 前端开发人员和设计师必读精华文章【系列二十六】
<Web 前端开发精华文章推荐>2014年第5期(总第26期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...
随机推荐
- Exchange 2016的MAPI over HTTP简介
一.MAPI over HTTP的简介 MAPI(消息处理应用程序编程接口)over HTTP是传输协议,可将传输层移到行业标准HTTP模型中,从而提升Outlook 和 Exchange连接的可靠性 ...
- June 17th 2017 Week 24th Saturday
Absence sharpens love, presence strengthens it. 相聚爱益切,离别情更深. There is almost no such love that can i ...
- POJ 2771 Guardian of Decency 【最大独立集】
传送门:http://poj.org/problem?id=2771 Guardian of Decency Time Limit: 3000MS Memory Limit: 65536K Tot ...
- 2018.12.19 Struts2 框架总复习
总结Struts2 框架 struts2技术的优势 项目开源,使用及拓展方便 提供Exception处理机制 Result方式的页面导航,通过Result标签很方便的实现重定向和页面跳转 通过简单.集 ...
- 行云管家 V4.7产品新特性-国际化版本、支持Oracle的数据库审计、主机密码自动修改策略 发布日期:2018-11-22
行云管家在线体验: 行云管家[官网]-领先的云计算管理平台-云安全,堡垒机,自动化运维 行云管家新手有礼活动: 行云管家新手有礼,新用户1元即可体验专业版-优惠券 发布日期:2018-11-22 ...
- 开发工具--Eclipse使用及常见问题解决
怎么查询Eclipse版本号: 方法一: 方法二: Eclipse安装目录下面找到readme文件夹,里边有个网页打开就可以看到当前版本; Eclipse汉化改为英文: Eclipse Mybatis ...
- ZooKeeper下载安装(Windows版本)
进入Apache ZooKeeper官方网站进行下载,https://zookeeper.apache.org/releases.html 这里我们选择zookeeper-3.4.12版本进行下载 百 ...
- flask笔记(一)
1.第一个flask项目 # 首先你要安装flask这个模块 pip install flask # 安装好了之后,直接新建一个py文件,开始写最简单的flask项目了 from flask impo ...
- BZOJ3668: [Noi2014]起床困难综合症(贪心 二进制)
Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 2708 Solved: 1576[Submit][Status][Discuss] Descript ...
- ABAP术语-Business Object Type
Business Object Type 原文:http://www.cnblogs.com/qiangsheng/archive/2008/01/10/1033480.html Generic de ...