如何计算平均速度?

How can I calculate the average speed?

from tkinter import *

def show_entry_fields():

        print("Entry time: %s\nEntry distance: %s\nAverage Speed =(e1*e2)" % (e1.get(), e2.get()))

master = Tk()
Label(master, text="Enter entry time").grid(row=0)
Label(master, text="Enter entry distance").grid(row=1)


e1 = Entry(master)

e2 = Entry(master)

e1.grid(row=0, column=1)

e2.grid(row=1, column=1)


Button(master, text='Quit', command=master.quit).grid(row=3, column=0, sticky=W, pady=4)

Button(master, text='Show', command=show_entry_fields).grid(row=3, column=1, sticky=W, pady=4)

mainloop( )

我正在尝试制作一个计算平均速度的程序,但到目前为止我在某处出错了...

 print("Entry time: %s\nEntry distance: %s\nAverage Speed =(e1*e2)" % (e1.get(), e2.get()))
  1. print("(e1*e2)") 只是打印一些文本,它不做任何计算。
  2. 它无法进行某些计算,因为您没有存储 get() 的结果。根据 .get() 是返回存储的数字还是提示用户,这可能不需要存储,但它需要保持一致 - e1 和 e2 是您可以计算的数字,或者您需要 .get( ) 中的数字。您从一种模式切换到另一种模式。
  3. 平均速度不是时间*距离,而是distance/time。
  4. 它使用旧式字符串插值

例如(未经测试)

    t=float(e1.get())
    d=float(e2.get())
    print("Entry time: {0}\nEntry distance: {1}\nAverage Speed = {2}".format(t, d, d/t))

根据 show_field 函数 print "e1*e2" 中的 tessellatingHeckler 将打印 e1*e2。

  • 克服问题将字符串值转换为 float ex e1value = (浮动)e1.get() e2value = (浮动)e2.get() Val = (str)e1value*e2value 打印 "%s" %(Val)