我从书中读到(从Python新手到专业人士)说“通常认为重复代码是件坏事”(我不是母语人士,所以我不确定最初是如何编写的),并说:
#===11-7===
file = open(PATH)
while True:
char = file.read(1)
if not char:
break
print('Processing:', char)
file.close()
优于:
#===11-6===
file = open(PATH)
char = file.read(1)
while char:
print('Processing:', char)
char = file.read(1)
file.close()
因为11-7避免了代码重复。所以我来问:什么是代码重复?有那么糟糕吗?你知道吗
仅仅是从11-6表中判断,我看不出有什么。。。缺点,老实说,如果我没有看这本书,我会喜欢11-6这样的代码。~谢谢~
第二个示例在两个位置执行读取操作。所以呢
假设您编写了这段代码,并且在将来的某个时刻,您更改了读取数据的方式;也许现在您希望通过网络而不是从文件中读取数据,或者您希望使用不同的函数从文件中读取数据。在第一个例子中,你只需要改变“文件.read(1) “在一个地方,而在第二个地方,你必须在两个地方做,你可能会错过其中一个,或犯错误,等等
类似地,您可能会在代码中发现一个bug,并意外地只在这两个地方之一修复它。你知道吗
这显然是一个简化的例子,在这个例子中,这并不重要,但在现实世界中,这样的错误很容易犯:想象一下,这不是一行代码,而是50行重复的代码,有人在一个副本中修复了一个bug,但在另一个副本中却没有。您现在遇到了一个可能很难调试的问题!你知道吗
相关问题 更多 >
编程相关推荐