广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python反转一个三位整数的多种实现方案
  • 629
分享到

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

2024-04-02 19:04:59 629人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

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

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

输入 输出
123 321

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


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))

以上就是我所想到的输出3位数反转数的方法,希望能给大家一个参考,也希望大家多多支持编程网。如有错误或未考虑完全的地方,望不吝赐教。

--结束END--

本文标题: python反转一个三位整数的多种实现方案

本文链接: https://www.lsjlt.com/news/121377.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作