Python拆分小数为整数部分和小数部分

没有使用包

就是比如1234.567这样一个小数,拆分成整数部分1234和小数部分567分别输出

a = input()
num = 0
for i in range(len(a)):
    if a[i] != ".":
        num = num +1
    else:
        break
print(a[:num])
print(a[num+1:])

输出结果如图:

其实之前我有一个疑惑,就是最后两个print那里。结果后来发现还是对a[::]这类描述不太清楚。

Python不是顾头不顾尾嘛,所以a[:num]这种(假如就以我输入的1234.567为例),当num已经为4,进入第五个循环的时候,if判断出a[4]==".",所以走else直接退出循环,因而这时候num还是4。

又因为a[:num]表示的含义是按顺序从a里面的第一个数开始一直取到下标为num-1的数,即取a[0]到a[3],所以输出为1234;

而a[num+1:]的含义是按顺序从a里面下标为num+1的数开始一直取到最后一个数,即取a[5]到最后一个数a[7],所以输出为567(注意:小数点“.”也属于字符串中的一员,也拥有下标)

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值