Python 实现反转整数的案例(很容易懂的那种)
题目:
给出一个32位的有符号整数,你需要将这个整数中每位上的数字进行反转。
示例1:
输入:123
输出:321
示例2:
输入:-123
输出:-321
示例3:
输入:120
输出:21
注意:
假设我们的环境只能存储得下32位的有符号整数,则其数值范围为
解题思路:
1.实现数据的反转
如果是正数:
tra=0 whilex!=0: n2=x%10 x=x//10 tra=tra*10+n2
如果是负数就abs()一下这个数
2.溢出判定
给出范围[−2^31,2^31−1]
则输出的结果tra就必须满足这个范围.
代码:
classSolution(object): defreverse(self,x): base=1 foriinrange(31): base=base*2 two_Max=base-1 two_Min=-base tra=0 ifx<0: x=abs(x) whilex!=0: n2=x%10 iftra>abs(two_Min)//10or(tra==abs(two_Min)//10andn2<-8): return0 x=x//10 tra=tra*10+n2 return-tra else: whilex!=0: n2=x%10 iftra>two_Max//10or(tra==two_Maxandn2>7): return0 x=x//10 tra=tra*10+n2 returntra
补充:python实现数字反转_python数字怎么反转
每次写Python都会忘记该怎么写,最后只能去StackOverflow查?我也一样。时间一长,这让人厌倦。
这15个Python技巧和窍门,可以帮你提高效率
1.交换值
x,y=1,2 print(x,y) x,y=y,x print(x,y)
2.字符串列表合并为一个字符串
sentence_list=["my","name","is","George"] sentence_string="".join(sentence_list) print(sentence_string)
3.将字符串拆分为子字符串列表
sentence_string="mynameisGeorge" sentence_string.split() print(sentence_string)
4.通过数字填充初始化列表
[0]*1000 #Listof1000 zeros[8.2]*1000 #Listof10008.2's
5.字典合并
x={'a':1,'b':2} y={'b':3,'c':4} z={**x,**y}
6.反转字符串
name="George"name[::-1]
7.从函数返回多个值
defget_a_string(): a="George" b="is" c="cool"returna,b,c sentence=get_a_string()(a,b,c)=sentence
8.列表解析式
a=[1,2,3] b=[num*2fornumina]#Createanewlistbymultiplyingeachelementinaby2
9.遍历字典
m={'a':1,'b':2,'c':3,'d':4}forkey,valueinm.items():print('{0}:{1}'.format(key,value))
10.同时遍历列表的索引和值
m=['a','b','c','d']forindex,valueinenumerate(m):print('{0}:{1}'.format(index,value))
11.初始化空容器
a_list=list() a_dict=dict() a_map=map() a_set=set()
12.删除字符串两端的无用字符
name="George"name_2="George///"name.strip()#prints"George"name_2.strip("/")#prints"George"
13.列表中出现最多的元素
test=[1,2,3,4,2,2,3,1,4,4,4]print(max(set(test),key=test.count))
14.检查对象的内存使用情况
importsysx=1print(sys.getsizeof(x))
15.将dict转换为XML
fromxml.etree.ElementTreeimportElementdefdict_to_xml(tag,d):'''Turnasimpledictofkey/valuepairsintoXML'''elem=Element(tag)forkey,valind.items():child=Element(key)child.text=str(val)elem.append(child)returnelem
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。