Python统计浮点数小数位

输入一个浮点数,如:3.1415926
输出格式化输出小数部分的和


num = float(input("请输入一个浮点数: "))
integer_part, decimal_part = str(num).split('.')
decimal_list = list(decimal_part)
sum = 0
for digit in decimal_list:
    sum += float(digit)
print("小数部分的和为:", sum)

小魔女参考了bing和GPT部分内容调写:
计算浮点数小数位和的方法有很多,比如可以使用Python的内置函数,也可以自己实现一个函数来计算。

使用Python内置函数,可以使用str()函数将浮点数转换为字符串,然后使用for循环遍历字符串,将小数位上的数字相加即可。

例如:

num = 3.1415926
s = str(num)
sum = 0
for c in s:
    if c.isdigit():
        sum += int(c)
print(sum)

上面的代码中,首先使用str()函数将浮点数转换为字符串,然后使用for循环遍历字符串,使用isdigit()函数判断是否是数字,如果是数字,则将其转换为整数后累加到sum中,最后打印sum的值即可。

另外,也可以自己实现一个函数来计算浮点数小数位和,例如:

def get_float_sum(num):
    s = str(num)
    sum = 0
    for c in s:
        if c.isdigit():
            sum += int(c)
    return sum

num = 3.1415926
print(get_float_sum(num))

上面的代码中,定义了一个get_float_sum()函数,用于计算浮点数小数位和,然后调用该函数,传入浮点数,最后打印函数的返回值即可。
回答不易,记得采纳呀。


pi = 3.1415926
total = sum( [ int(i) for i in str(pi).split('.')[1] ] )
print(f'浮点数 {pi} 小数位的总和是:{total}')
f = 3.1415926
# 转换成字符串,截取小数点后面的数据
temp = str(f).split('.')[-1]
# 将字符串每个元素转换为整数列表,求和
result = sum([int(i)  for i in temp])
print(result)

有帮助的话,请点采纳该答案~

********28
怎么写