如何在tkinter GUI python中将结果从int更改为double?尝试投射,但是没有用

时间:2019-08-29 04:45:24

标签: python user-interface tkinter mean median

这是我下面的代码,结果总是整数而不带小数,如何将其更改为双精度或带小数的数字?

我尝试投射,但没有用。


import tkinter as tk
from functools import partial

n_num = list(map(int, input('Enter mean numbers: ').split()))
n = len(n_num)

get_sum = sum(n_num)
mean = get_sum / n

print("Mean / Average is: " + str(mean))



def mean_result (label_mean_result,num):
    n_num = list(map(int,num.get()))
    n = len(n_num)

    get_sum = sum(n_num)
    mean = get_sum /n
    label_mean_result.config(text = "Result = %d" % float(mean))
    return



root = tk.Tk()
root.geometry('400x200+100+200')

root.title('Final program')

meanInput = tk.StringVar()

labelMean = tk.Label(root, text="Mean input:").grid(row=1, column=0)

labelResult = tk.Label(root)

labelResult.grid(row=7, column=2)

entryNum1 = tk.Entry(root, textvariable=meanInput).grid(row=1, column=2)


mean_result = partial(mean_result, labelResult, meanInput)

buttonCal = tk.Button(root, text="Calculate", command=mean_result).grid(row=3, column=0)

我希望输出是带小数的数字,而不是整数。

1 个答案:

答案 0 :(得分:0)

您不必将其强制转换为float

只需使用字符串格式:

label_mean_result.config(text="Result = {}".format(mean))

或f字符串:

label_mean_result.config(text=f"Result = {mean}")