В питона, внутри класса, оказывается, что при сохранении «я» переменную в другую, если я редактирую новую переменную, «я» также отредактирован:Как сохранить переменную «self» в python?
undropped_lines = self.flagged_lines
print self.flagged_lines
del undropped_lines[0]
print self.flagged_lines
Как следует избегать эта черта в коде?
Прочтите http://nedbatchelder.com/text/names.html подробное объяснение происходящего. Короче говоря, если оба имени указывают на изменяемое значение и вы изменяете значение, то оба имени * видят * обновление, потому что они все еще указывают на один и тот же объект. Если 'self.flagged_lines' был неизменным, и вы изменили' undropped_lines', тогда вы не увидели бы этого поведения. –