1

以下 python 代码有效,但可维护性很差。

但是,我没有看到更好的方法来实现代码以提高可维护性。

extraval = ""
if aline[0:1] == "-":
    extraval = '"expanded":true, '
    aline = aline[1:] 
if aline[0:1] == "+":
    extraval = '"expanded":false, '
    aline = aline[1:] 

当我需要处理额外的参数时,代码会不断加倍。

4

1 回答 1

2

您可以使用 adict将目标键映射到它们的关联值。然后检查特定键是否存在并返回匹配键的关联值将是微不足道的。

例如:

m = { 
  "-" : '"expanded":true, ',
  "+" : '"expanded":false, ',
}

if aline[0] in m:
  extraval = m[aline[0]]
  aline = aline[1:]
于 2012-07-06T08:19:21.230 回答