来自python党的提醒
查看原帖
来自python党的提醒
1209259
yhr000楼主2023/11/20 18:10

对小数的处理,如果采用str转float会因为位数过多而造成WA。处理小数部分可采取反转后切片的方式去除末尾的0.代码如下:

#对分数、百分数、整数的处理代码略
s=input()
if '.' in s:
	lis=s.split('.')#分离两部分
	new1=str(int(lis[0][::-1]))#处理整数部分
	#处理小数部分
	new2=lis[1][::-1]#反转
	#末尾0的处理,长度>1
	while new2[-1]=='0' and len(new2)>1:
		new2=new2[:-1]
	#拼接
	new=new1+'.'+new2
	print(new)
2023/11/20 18:10
加载中...