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

 更新时间:2021年03月10日 11:43:58   作者:joey_jiangz  
这篇文章主要介绍了python反转一个三位整数的多种实现方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在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位数反转数的方法,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • Selenium python时间控件输入问题解决方案

    Selenium python时间控件输入问题解决方案

    这篇文章主要介绍了Selenium python时间控件输入问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • 快速查找Python安装路径方法

    快速查找Python安装路径方法

    这篇文章主要介绍了快速查找Python安装路径方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 基于PyQt5制作一个windows通知管理器

    基于PyQt5制作一个windows通知管理器

    python框架win10toast可以用来做windows的消息通知功能,通过设定通知的间隔时间来实现一些事件通知的功能。本文将利用win10toast这一框架制作一个windows通知管理器,感兴趣的可以参考一下
    2022-02-02
  • 使用Python的pygame库绘制图形示例详解

    使用Python的pygame库绘制图形示例详解

    这篇文章主要介绍了使用Python的Pygame库绘制图形的方法,Pygame是被设计用来写游戏的python模块集合,Pygame是在优秀的SDL库之上开发的功能性包,通常使用Pygame来开发具有全部特性的游戏和多媒体软件,感兴趣的朋友可以参考下
    2024-02-02
  • pygame游戏之旅 游戏中添加显示文字

    pygame游戏之旅 游戏中添加显示文字

    这篇文章主要为大家详细介绍了pygame游戏之旅的第5篇,教大家如何在游戏中添加显示文字,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • Python的__builtin__模块中的一些要点知识

    Python的__builtin__模块中的一些要点知识

    这篇文章主要介绍了Python的__builtin__模块中的一些要点知识,是Python学习中的基础,需要的朋友可以参考下
    2015-05-05
  • python分分钟绘制精美地图海报

    python分分钟绘制精美地图海报

    基于Python中诸如matplotlib等功能丰富、自由度极高的绘图库,我们可以完成各种极富艺术感的可视化作品,关于这一点我在系列文章在模仿中精进数据可视化中已经带大家学习过很多案例了
    2022-02-02
  • pycharm自动生成文件注释和函数注释

    pycharm自动生成文件注释和函数注释

    这篇文章主要介绍了pycharm自动生成文件注释和函数注释的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-07-07
  • python实现文件的分割与合并

    python实现文件的分割与合并

    这篇文章主要为大家详细介绍了python实现文件的分割与合并,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • pyqt 实现为长内容添加滑轮 scrollArea

    pyqt 实现为长内容添加滑轮 scrollArea

    今天小编就为大家分享一篇pyqt 实现为长内容添加滑轮 scrollArea,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06

最新评论