给定一个n位(不超过10)的整数,将该数按位逆置,例如给定12345变成54321,12320变成2321.

# 第一种方法,使用lstrip函数去反转后,数字前面的0
import  math
number=(input("input a number:"))
if number.isdigit() and int(number)>=0:
    number_new=number[::-1]
    number_result=int(number_new.lstrip("0"))
else:
    # 负数的情况,首先转为正数:
    # 把负号去掉
    # number=number[1:]
    # print("fushu:",number)
    # number_new=-int(number[::-1])#这种写法也可以
    number_result =-int((number[1:][::-1]).lstrip("0"))

print(number_result)

 



# 第二种方法:  使用最笨的方法把反转后的整数进行遍历,前面是0的去掉,直到遇见不是0的结束

import  math
number=(input("input a number:"))
if number.isdigit() and int(number)>=0:
    number_result=number[::-1]
    for i in range(len(number_result)):
        print(i)
        if number_result[i]=="0":
            number_result=number_result[i:]#如果遍历是0,则把字符串切片,取i之后的部分,
        if number_result[i]!="0":
            break
    number_result=int(number_result)


if number.isdigit() and int(number)<0:
    number_result =((number[1:][::-1]))
    for i in range(len(number_result)):
        print(i)
        if number_result[i]=="0":
            number_result=number_result[i:] 
        if number_result[i]!="0":
            break
    number_result=-int(number_result)

print(number_result)

 

相关文章:

  • 2021-09-12
  • 2021-10-25
  • 2022-02-11
  • 2022-12-23
  • 2021-06-28
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-09
  • 2022-02-06
  • 2021-10-17
  • 2021-12-14
  • 2022-12-23
  • 2021-08-04
相关资源
相似解决方案