有没有办法做我想在这里做:迭代对象属性并更改它们?
for item in [self.docket_numbers, self.neutral_citations,
self.lower_courts, self.lower_court_judges,
self.dispositions, self.judges, self.nature_of_suit]:
if item is not None:
item = [clean_string(sub_item) for sub_item in item]
显然,在最后一行,我需要在列表解释的结果分配回对象......但我我不知道如何。
有时我喜欢SO。感谢您使用我的当前代码添加[:]的快速,详细和梦幻般的答案。你能解释一下吗?我从来没有见过它? – mlissner 2012-02-25 03:46:10
'[:]'表示没有指定开始或结束的片段,这意味着它占用了整个事物。 'a_list [:]'做了一个列表的浅表副本。当分配给该片段时,这意味着你删除了指定片段并将其替换为给定列表,所以'a_list [:] = b_list'将给出'a_list'的所有内容,同时仍保持对象标识'a_list'(这就是为什么你不需要'setattr')。 – 2012-02-25 04:34:28