在python中的数组的答案

时间:2017-02-08 20:54:59

标签: python arrays list

我正在尝试使用while和if条件绘制图表。

vf = vi + a*t
vt = (2*m*g/(C*p*A))**(1/2)

while t<1000:
    vf = vi + a * t
    t+=1
    if vf<vt:
        print(t)
    else:
        pass    

所以vf是速度,vt是终端速度。 我希望vf增加,只要它小于我已经完成的vt,你可以从代码中看到。

我遇到的问题是X组件(在本例中为t)。 它显示如下:

0
1
2
3
...

等等 是否有任何更改为数组的命令,就像它一样 [0,1,2,3,...]

谢谢

4 个答案:

答案 0 :(得分:1)

您可以使用end在一行中打印项目

print(t)更改为print(t, end=" ")

答案 1 :(得分:1)

您正在寻找列表。

_list = []
_list.append(1)
_list.append(2)
_list.append(t)

打印只是将变量输出到下一行。如果使用如上所示的附加替换打印件,则会将其添加到阵列中。我修改了你的代码并显示在下面。

vf = vi + a*t  
vt = (2*m*g/(C*p*A))**(1/2)  

t_list = []  
while t<1000:  
    vf = vi + a * t  
    t+=1  
    if vf<vt:  
        t_list.append(t)  
    else:  
        pass   

答案 2 :(得分:0)

我想你要求下面的代码:

vf = vi + a*t
vt = (2*m*g/(C*p*A))**(1/2)
arr = []
while t<1000:
    vf = vi + a * t
    t+=1
    if vf<vt:
        arr.append(t)
    else:
        pass  

答案 3 :(得分:0)

您可以更改调用print()函数的方式,以便定义 end 的内容。看一下这个例子:

>>> def print_array(array):
...     print("[ ",end="")
...     for i in array:
...         print(i, end=", ")
...     print("]")
... 
>>> print_array(range(0,5))
[ 0, 1, 2, 3, 4, ]
>>>