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

### 回答1: 答案:int_num = int(input("请输入一个三位整数:"))# 将整数转换成字符串 str_num = str(int_num)# 将字符串反转 reverse_num = str_num[::-1]# 将字符串转换整数 reverse_int_num = int(reverse_num)print("反转后的整数为:"+str(reverse_int_num)) ### 回答2: 要实现一个三位整数的数值倒置,可以使用Python编程语言。具体实现步骤如下: 1. 首先,需要用户输入一个三位整数,可以使用`input()`函数来获取用户的输入。 ``` num = input("请输入一个三位整数:") ``` 2. 接下来,需要判断用户输入是否为一个三位整数。可以使用`isdigit()`函数来判断输入是否为数字,并且使用`len()`函数来判断数字的长度是否为3。 ``` if num.isdigit() and len(num) == 3: # 这里是继续执行后续操作的代码 else: print("输入不合法,请重新输入一个三位整数。") ``` 3. 然后,将输入的数字进行倒置。可以使用字符串的切片功能,将数字转为字符串后进行切片并翻转。 ``` reversed_num = num[::-1] ``` 4. 最后,将倒置后的结果输出。 ``` print("倒置后的结果为:" + reversed_num) ``` 完整的代码如下: ```python num = input("请输入一个三位整数:") if num.isdigit() and len(num) == 3: reversed_num = num[::-1] print("倒置后的结果为:" + reversed_num) else: print("输入不合法,请重新输入一个三位整数。") ``` 以上就是使用Python编程实现一个三位整数的数值倒置的方法。 ### 回答3: 要实现一个三位整数的数值倒置,可以使用以下Python代码: ```python # 输入原始整数 num = int(input("请输入一个三位整数:")) # 检查输入是否为三位整数 if num < 100 or num > 999: print("输入不合法,请重新输入一个三位整数。") else: # 计算倒置后的数值 reversed_num = (num % 10) * 100 + ((num // 10) % 10) * 10 + (num // 100) # 输出倒置后的数值 print("倒置后的数值为:" + str(reversed_num)) ``` 运行以上代码后,程序首先会要求用户输入一个三位整数。然后,程序会检查输入是否为三位整数。如果输入不合法,程序会输出错误提示信息并要求重新输入一个三位整数。如果输入合法,程序会计算出输入整数的倒置数值,并输出结果。 例如,如果用户输入的整数为376,程序会输出: ``` 倒置后的数值为:673 ``` 这样,我们就成功用Python编程实现一个三位整数的数值倒置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值