让你彻底弄懂Python编程经典案例【考题】之反转一个值

学习Python有很多不同的方法,可以看视频、看博客、看公众号等。但光说不练,很难有快速的提升。最好能动手去处理实际问题,这样才能把学到的知识应用得更熟练。
  

本文和你一起来探索Python编程的经典案例,让你沉浸式学习Python。助你期末考试拿高分,拿到大厂的心仪offer。你可以先自己拿着题目去思考有多少种不同的解题方案,然后再对照本文解题方法进行比较。有不同的解题方法欢迎到公众号中跟我一起探讨。

  
在这里插入图片描述
  
  

一、经典案例【考题】

  

1.基础题目:反转一个三位正整数

  
输入: 任意一个三位正整数
  
输出: 相应反转的三位正整数
  
例:
  
输入: 876
  
输出: 678
  

2.进阶题目:反转任意一个字符

  
输入: 任意一个字符
  
输出: 反转该字符
  
例:
  
输入:‘你是年少的欢喜’
  
输出:‘喜欢的少年是你’

  
  

二、经典案例解题方法

  

方法一:先取出个位、十位、百位上的数,再把位置反转

  
定义一个反转函数,把原始的数作为输入值。依次取出原始数的个位、十位、百位,再乘以不同的倍数把数的位置进行反转。
  
具体代码如下:

def rev_int1(number):
    h1 = int(number/100)
    h2 = int(number%100/10)
    h3 = int(number%10)
    return h3*100+h2*10+h1

rev_int1(876)

得到结果:

678

其中number/100:表示把number除以100。

  

方法二:先把数变成字符列表,利用range函数倒序拼接

  
定义一个反转函数,把原始的数作为输入值。先把数字变成字符列表,再利用range函数进行倒序拼接。
  
具体代码如下:

def rev_all(x):
    str_x  = list(str(x))
    rev_str_x = ''
    for i in range(len(str_x)-1, -1, -1):
        rev_str_x += str_x[i]
    return rev_str_x
rev_all(876)

得到结果:

678

str(x):把x变成一个字符串。
  
list(str(x)):把字符串变成一个列表。
  
range(len(str_x)-1, -1, -1):把列表的长度坐标倒序排列。
  
str_x += str_x[i]:把倒序排列的字符进行合并.
  
这种方法不仅可以对三位整数进行反转,而且可以推广到任意位的整数,进一步可以对任意字符串进行反转。比如反转一个四位数

rev_all(4131)

得到结果:

678

比如反转一个7位字符串

rev_all('你是年少的欢喜')

得到结果:

'喜欢的少年是你'

至此,Python中的编程经典案例【考题】之反转一个值已讲解完毕。如想了解更多Python中的函数,可以到“阿黎逸阳的代码”公众号中翻看“学习Python”模块相关文章。

  
你可能感兴趣:
用Python绘制皮卡丘
用Python绘制词云图
用Python绘制520永恒心动
Python人脸识别—我的眼里只有你
Python画好看的星空图(唯美的背景)
【Python】情人节表白烟花(带声音和文字)
用Python中的py2neo库操作neo4j,搭建关联图谱
Python浪漫表白源码合集(爱心、玫瑰花、照片墙、星空下的告白)

长按(扫一扫)识别上方二维码学习更多Python和建模知识,让你的学习和工作更出彩。

猜你喜欢

转载自blog.csdn.net/qq_32532663/article/details/125456798
今日推荐