当前位置:   article > 正文

[Python]给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。输入共 1 行,一个整数N_给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形

给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形

描述

给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。

输入

输入共 1 行,一个整数N。

-1,000,000,000 ≤ N≤ 1,000,000,000。

输出

输出共 1 行,一个整数,表示反转后的新数。

样例输入

样例 #1:
123

样例 #2:
-380

样例输出

样例 #1:
321

样例 #2:
-83

来源

NOIP2011复赛 普及组 第一题

代码如下:

  1. N=int(input())
  2. flag=False # 标志位,记录N的正负情况
  3. if N<0:
  4. flag=True # N为负数,设置标志位为True
  5. abs_N=abs(N) # 方便计算正负数
  6. str_N=str(abs_N) # 方便计算长度
  7. res=0
  8. for i in range(len(str_N)-1,-1,-1):
  9. res=res*10+int(str_N[i]) # 将字符转换为整数并添加到res的后面
  10. if flag:
  11. res*=-1 # 如果N为负数,则将结果取负
  12. print(res)

 tips:

for i in range(len(str_N)-1,-1,-1):这段代码是使用for循环将字符串反向遍历,从最后一个字符到第一个字符,下标从len(str_N)-1到-1,从len(str_N)-1开始是因为字符串的最后一个字符的下标等于字符串的长度减一,到-1是因为取不到-1,只能取到0,第一个字符的下标就是0,再将步长设置成-1,从而循环能够从最后一个字符遍历到第一个字符,从最后一个下标为len(str_N)-1到倒数第二个下标为len(str_N)-2......到第一个下标为0;
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码架构师/article/detail/60533
推荐阅读
相关标签
  

闽ICP备14008679号