您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python反转一个三位整数的多种实现方案

51自学网 2021-10-30 22:49:43
  python
这篇教程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+bif __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,输出321number = int(input('请输入一个三位数:'))a = number%10 #个位b = number//10%10 #十位c = number//100 #百位re_number = a*100 + b*10 + cprint('%d的反转数是:%d'%(number,re_number)) #第一种输出方式print('{0}的反转数是:{1}'.format(number,re_number)) #第二种输出方式

第二种方法

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

#输入number = 123,输出321number = 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 + cprint('%s的反转数是:%s'%(number,re_number))print('%d的反转数是:%d'%(int(number),re_number))

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


Python 实现反转整数的案例(很容易懂的那种)
Python 反转输出正整数的操作
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。