Python列表列表

时间:2012-05-02 17:14:29

标签: python list physics

我是python和编程的新手,我正在研究我的计算物理学的最终项目,我很难得到结构,这将允许我实例化每个具有属性x,y的n-粒子,vx,& VY。这些都是理想的气体模拟,最终将被插入恒星融合模型。任何帮助将不胜感激。这是我到目前为止所拥有的。

    import random

    atoms = 10
    x = 1000
    y = 1000
    vx = 1000
    vy = 1000
    t = 1
    n = 10000
    b = 0   
    dt = 10
    particle = [x, y, vx, vy]
    system = [particle]
    for i in range(atoms):
        system.append(i)

        for system[i] in range(atoms):
            particle.x = x * random.uniform(0.1, 0.9999)
            particle.y = y * random.uniform(0.1, 0.9999)
            particle.vx = vx * random.uniform(0.1, 0.9999)
            particle.vy = vy * random.uniform(0.1, 0.9999)

        for particle[i] in range(atoms):    
                for t in range(dt):
                    x = x + vx
                    y = y + vy
                    if y < 0:
                        y = -y
                        vy = -vy

                    if x < 0:
                        x = -x
                        vx = -vx

                    if y > 10:
                        m = y - 10
                        y = 10 - m
                        vy = -vy

                    if x > 10:
                        k = x - 10
                        x = 10 - k
                        vx = -vx

基本思想是有一个名为'system'的列表,其元素是名为'粒子'的列表,随着系统随时间的推移,我需要跟踪这些粒子的位置。非常感谢!

*更新

当我跑的时候我会尽力而为             particle.x = x * random.uniform(0.1,0.9999) 我遇到的地方 “AttributeError:'list'对象没有属性'x'”

如何将属性(x,y,vx,vy)分配给每个列表'粒子',然后将这些列表用作名为'system'的列表中的元素?

我知道代码很难过'原样',我觉得我咬得比我嚼得多。谢谢你的耐心等待。

1 个答案:

答案 0 :(得分:1)

我不想做人的作业,很难看出你的问题是什么,但似乎是“请解释清单”?

characters = []
characters.append (["plumber","wrench"])
characters.append (["wizard","wand"])
> print characters [0]
['plumber', 'wrench']
> print characters [1]
['wizard', 'wand']
> print characters [1][1]
wand