python反转一个三位整数的多种实现方案

作者:joey_jiangz 时间:2023-07-03 00:19:06 

在LintCode上练习遇到这个问题,查阅资料找到多种方法,总结如下。

输入输出
123321

第一种:整数方法取余取整实现


class Solution:
 """
 @param number: A 3-digit number.
 @return: Reversed number.
 """
 def reverseInteger(self, number):
   g = number%10     #取出个位数
   s = (int(number/10))%10  #取出十位数  
   b = int(number/100)     #取出百位数
   return g*100+s*10+b
if __name__ == "__main__":
 so = Solution()
 print (so.reverseInteger(123))

python不和C语言一样自动截取保留整数,需要用 int 转换一下

第二种:使用字符串切片


 def reverseInteger(self, number):
   number=str(number)
   result=number[::-1]
   result=(int(result))
   return result

借用字符串的方法处理

第三种:使用栈


def reverseInteger(self, number):
number=str(number)#模拟入栈
   l=list(number)
   result=""
   while len(l)>0:
     result+=l.pop()#模拟出栈
   return int(result)

补充:Python程序:任意输入一个三位数,然后把三位数的位置反转输出。

第一种方法

把输入的三位数百位、十位和个位依次表示出来,然后将个位数字和百位数字进行交换。


#输入number = 123,输出321
number = int(input('请输入一个三位数:'))
a = number%10 #个位
b = number//10%10 #十位
c = number//100 #百位
re_number = a*100 + b*10 + c
print('%d的反转数是:%d'%(number,re_number)) #第一种输出方式
print('{0}的反转数是:{1}'.format(number,re_number)) #第二种输出方式

第二种方法

将输入的三位数以字符串的形式用list()方法列表化,然后逆序从列表中依次取出个位、十位、百位,输出的时候注意将str类型转换为int类型。


#输入number = 123,输出321
number = input('请输入一个三位数:')
list1 = list(number) #将输入的三位数的字符串存入列表
list1.reverse() #将列表元素反转
a = int(list1[0]) #取出反转后列表的元素并将其类型转为int类型
b = int(list1[1])
c = int(list1[2]) #也可以不反转列表,直接反着取出列表中的元素
re_number = a*100 + b*10 + c
print('%s的反转数是:%s'%(number,re_number))
print('%d的反转数是:%d'%(int(number),re_number))

来源:https://blog.csdn.net/yijiangzhao/article/details/87609982

标签:python,反转,整数
0
投稿

猜你喜欢

  • Python利用百度地图获取两地距离(附demo)

    2022-10-18 23:21:33
  • 全局安装 Vue cli3 和 继续使用 Vue-cli2.x操作

    2024-05-28 15:59:34
  • Oracle 函数大全

    2009-07-23 14:29:00
  • Python中DataFrame与内置数据结构相互转换的实现

    2022-12-09 18:17:55
  • pytorch 实现计算 kl散度 F.kl_div()

    2023-04-03 20:16:18
  • python MySQLdb Windows下安装教程及问题解决方法

    2024-01-26 11:57:49
  • 空行不空格式排版组织原理

    2010-05-03 14:46:00
  • 如何使用Vue3设计实现一个Model组件浅析

    2024-04-27 15:57:19
  • 使用auto.js实现自动化每日打卡功能

    2024-04-16 08:47:38
  • 使用Python绘制三种概率曲线详解

    2022-07-27 00:21:01
  • [MySQL binlog]mysql如何彻底解析Mixed日志格式的binlog

    2024-01-16 23:34:05
  • SQL Server小知识:Processor Affinity

    2008-11-24 20:50:00
  • Jsp+Servlet实现简单登录注册查询

    2023-07-15 18:08:08
  • Python编程之gui程序实现简单文件浏览器代码

    2021-08-20 11:09:36
  • ASP获取ACCESS数据库的表名以及表名对应的字段名和字段类型

    2009-12-25 18:57:00
  • 浅析使用JDBC操作MySQL需要添加Class.forName("com.mysql.jdbc.Driver")

    2024-01-21 23:08:48
  • Hadoop介绍与安装配置方法

    2022-08-10 03:50:02
  • Vue使用枚举类型实现HTML下拉框步骤详解

    2023-07-02 16:45:27
  • python用700行代码实现http客户端

    2021-12-06 20:32:49
  • 一台linux主机启动多个MySQL数据库的方法

    2024-01-14 00:46:00
  • asp之家 网络编程 m.aspxhome.com