在if语句中使用字符串列表

时间:2017-04-17 11:30:53

标签: python

我有几个结构如下的列表

list_01= [['Little Line', '15']]
list_02= [['Long Line', '20']]

稍后在这些列表之后的代码中,我想创建一个函数来定义我想要工作的行的创建,如下所示。如果列表中的项目等于字符串' Little Line'和' 15',它会创建一个小线。

def draw_line(dataset):
    if dataset[0[0]]==('Little Line'):
        left(dataset[0[1]])
        foward(25)

稍后,我可以在代码中调用此函数,如下所示:

draw_line(list_01)

创建该行。我所描述的代码与我当前的代码非常相似,并显示了我认为它应该如何工作。我知道这可能是非常基本的代码,但我遇到了错误,并且无法弄清楚它应该如何工作。

1 个答案:

答案 0 :(得分:3)

您访问嵌套列表的语法错误。而不是

dataset[0[0]]

你需要做

dataset[0][0]

但一般来说,列表不是合理的数据类型。字典会更有意义:

moves = {
    "Little line": 15,
    "Long line": 20,
    # etc.
    }

然后执行类似

的操作
def draw_line(dataset):
    left(dataset[0])
    forward(25)