问题描述
def multi(_conv,_pretty = False):
result = []
newResult = ""
for a in range(len(_conv)):
for i in range(len(data)):
if (str(_conv[a]) == data[i][0]):
result.append(data[i][1]
if(bool(_pretty) == True):
for i in range(len(result)):
newResult += str(result[i])
if(i != len(result) - 1):
newResult += ","
return newResult
但是由于我无法弄清楚的原因,在行if(bool(_pretty) == True):
上我在冒号上遇到语法错误。我已尝试确保间距正确,圆括号被打开没有任何问题,并且还尝试重写它以确保我没有丢失任何东西,但没有任何效果。如果有人可以帮助,那就太好了!
edit:对不起!我没有意识到仍然没有一对括号。那是我的坏事...
解决方法
您在)
中缺少result.append(data[i][1]
,导致解释器有些困惑。
其他问题...
您可以使用for
直接遍历列表中的项目。
在if
的条件下,无需括号。
无需强制转换_pretty
或将其与True进行比较。 _pretty
为a true value就足够了。
可以使用join
完成结果格式设置。
for c in _conv:
for d in data:
if str(c) == d[0]:
result.append(d[1])
if _pretty:
return ",".join(result)