我有一个列表,其项目是可变长度的列表。
如果这些可变长度的列表项超过此长度,则需要将其截断为特定长度(x)。
我做了这个小的功能。
def truncateList(batch_, trim_len):
truncated_list = []
for eachAbstract in train_abstracts_encoded:
if len(eachAbstract) > trim_len:
del eachAbstract[trim_len:]
truncated_list.append(eachAbstract)
else:
truncated_list.append(eachAbstract)
return truncated_list
但是,我可以在一行中以更pythonic的方式执行此操作吗?
像这样:
prefData = [ del eachEncodedAbstract[MAX_LEN:] if len(eachEncodedAbstract) > 510 else eachEncodedAbstract for eachEncodedAbstract in test_abstracts_encoded]
但这没有用,我得到了错误。
prefData = [ del eachEncodedAbstract[MAX_LEN:] if len(eachEncodedAbstract) > 510 else eachEncodedAbstract for eachEncodedAbstract in test_abstracts_encoded]
^
SyntaxError: invalid syntax
任何帮助将不胜感激。