【问题标题】:Is there any module that can handle unidentified variables?有没有可以处理不明变量的模块?
【发布时间】:2012-10-02 01:56:06
【问题描述】:

好的,所以我正在尝试制作一个程序,当两辆车以一定速度相互加速时,可以找到一辆车的 时间,每辆车的速度不同,只有使用 time=distance/rate 给出 rate。但我需要一个带有未解决变量的表达式来解决以下问题:

Car1 正在以 20 英里/小时的速度行驶。 Car2 比 Car1 快 10 英里/小时。 Car2 比 Car1 晚一小时离开。 Car2 需要多长时间才能赶上 Car1?

还有我没有程序的工作:

t = Travel time total (in hours)

10*t = 20(t-1) # Note the 1 is for the 1 hour

# rearrange
10*t = 20*t - 20

# subtract 10*t from both sizes
0 = 10*t - 20

# add 20 to both sides
20 = 10*t

#divide both sizes by 10
2 = t

是否有一个模块支持使用分配属性对未定义变量进行操作(即,它可以解决像这样的方程)?

如果没有,我可以举一个小例子来说明如何在没有模块的情况下使用未识别的变量吗?我刚在学校学过这个。

【问题讨论】:

  • 作为警告,请停止在回滚编辑之间弹跳以将您的问题推到首页。这是对编辑系统的滥用。
  • 对不起。我实际上不知道它这样做了。我很高兴,因为我的问题得到了回答。对不起。

标签: python variables math algebra


【解决方案1】:

您要查找的模块名为SymPy

import sympy
t = sympy.Symbol('t') # set t as a variable/symbol
sympy.solve(sympy.Eq(10*t, 20*(t-1)), t) # which reads: solve the equation 10*t == 20*(t-1) for t.
# returns [2] (list of solutions to the equation)

(查看更多关于使用 SymPy 的 quick examples)。

【讨论】:

  • 不知道这个模块,不错。
【解决方案2】:

这是你想要的吗?

def get_time(v1, v2, dt):
    t = (v2*dt)/(v2 - v1)
    return t

然后你可以用car1,car2的速度和偏移量调用函数,它会返回你想要的时间。

【讨论】:

    猜你喜欢
    • 2015-05-13
    • 2010-09-14
    • 1970-01-01
    • 1970-01-01
    • 2021-04-11
    • 2014-02-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-23
    相关资源
    最近更新 更多