我有一个字符串需要与'|'连接在用户界面中。例如:
'Walkable Close to Transit HOA Fee Free'
到目前为止,我有:
' | '.join(row['notes'].split(' '))
出于某种原因,如果字符串中只有一个值(例如'Walkable
')我需要'Walkable |'
时得到'Walkable'
。
我也尝试过:
' | '.join(filter(None, row['notes'].split(' ')))
但是,我得到filter undefined error
。我正在使用Python 2.7。关于如何使它起作用的任何想法?
答案 0 :(得分:0)
过滤器None不起作用,但可以使用等效的生成器表达式:
' | '.join(part for part in row['notes'].split(' ') if part)
答案 1 :(得分:0)
似乎我遗漏了一些重要信息:该错误正在Jinja模板中引发。通过按以下方式将串联移动到我的app.py
中,它起作用了:
def format_notes(value):
values = value.split(' ')
return ' | '.join(filter(None, values))
在我的模板中:
{{row['notes']|format_notes if row['notes'] != None}}
感谢@ bro-grammer的提示。