while块中的Python语法错误

while块中的Python语法错误,python,syntax,while-loop,Python,Syntax,While Loop,以下代码中出现语法错误: if value[0] == "ta" or "su": num_var = len(value) i = 0 while value[i][0] != "-" and i <= num_var: if i == 0 and value[0][0].isdigit(): f3["var_%s" %i] = VARFD[[value[0].split("/")[

以下代码中出现语法错误:

if value[0] == "ta" or "su":
        num_var = len(value)
        i = 0
        while value[i][0] != "-" and i <= num_var:
            if i == 0 and value[0][0].isdigit(): 
                f3["var_%s" %i] = VARFD[[value[0].split("/")[1]]
            else: 
                f3["var_%s" %i] = VARFD[[value[0]]
            f4["val_%s" %i] = "T"
            i += 1
如果值[0]=“ta”或“su”:
num_var=len(值)
i=0

而值[i][0]!=“-”而我你在表格中缺少了一个方括号

        if i == 0 and value[0][0].isdigit(): f3["var_%s" %i] = VARFD[[value[0].split("/")[1]]

线路。但是Python代码实际上并不意味着编写得如此密集。空间与光

新行的供应是否受到限制,或者为什么要编写这样的代码

您的错误在这里,缺少一个
]

VARFD[[value[0].split("/")[1]]

这很简单,因为在else之前,行中缺少了一个端括号

VARFD[[value[0].split("/")[1]]
我想这个表达应该是

VARFD[value[0].split("/")[1]]

很明显,当出现这样的错误时,你应该分解并简化你的代码:)

你知道
value[0]==“ta”或“su”
value[0]==“ta”或value[0]==“su”
不一样,对吧?
value[0]在('ta',su')
中会更好。请不要内联,如果机构。读起来很难看,尤其是对于较长的行。这实际上是一个非常不可读的代码:缩进不好,内联线太多,每行超过80个字符。如果我添加新行,程序不会变慢吗?