【发布时间】:2011-05-30 12:41:03
【问题描述】:
我倾向于在编写原型脚本时使用它,并且:
- 使用一些通用的变量(例如
fileCount),并且 - 有一个大型方法(20 多行),并且
- 暂时不要使用类或命名空间。
在这种情况下,为了避免潜在的变量冲突,我一完成就删除了这个 bugger。我知道,在生产代码中我应该避免使用 1.、2. 和 3.,但是从可以工作的原型到完全完善的类是很耗时的。有时我可能想满足于一个次优的、快速的重构工作。在这种情况下,我发现可以方便地使用 del 语句。我是否正在养成一种不必要的坏习惯? del 完全可以避免吗?什么时候会是好事?
【问题讨论】:
-
我同意它很有用。我知道我被循环变量泄漏咬了,然后在不应该的时候被设置。
-
“del 完全可以避免吗?” -> 你只需要
del mydict[key]等 -
@nate c,(至少我)关心的不是性能,而是重用从 for 循环和/或前一个块溢出的变量(由于拼写错误/糟糕的代码组织)代码中有错误的值。复制粘贴类型的代码特别容易出错;)
-
它通过在已经为您完成的事情中添加不必要的逻辑来破坏目的。名称冲突在任何语言中都是一个错误(无论有没有内存管理),可以通过其他方式解决。