我已经是 Python 语言的狂热学习者有一段时间了。拥有超过 6 年的 Java [专业] 经验,再加上一些 C++ [兴趣] 经验 - 可以说我的视角深深植根于这些静态类型、强绑定语言所带来的惯用语。简而言之,我可以说老派的思考方式对我的编程风格产生了重大影响。
我选择学习 Python 而不是 Ruby 的原因主要是巧合,因为我找到了一份可以使用 Python 帮助的兼职工作。现在已经过去了两个星期,事情发生了彻底的变化!凭借 IDLE 和 Python Essential Reference,一个又一个的启示接踵而至。就像一个古典物理学家如果重力消失了会感觉一样!
无论如何,我知道要有效地使用 Python,需要进行真正的实践。我认为比起语法,更重要的是我的思维方式。然而,尽管我做好了充分的准备,仍然有一件事情让我相当困扰 - Python 提供了太多的惯用语来执行同样的任务。例如,列表推导式和 filter(...)、apply(...) 和 eval(...) 等。虽然这些惯用语并非完全可替代,但我发现它们的主要目的在很大程度上重叠。
我知道它们使用起来一定有潜在的性能优势。然而,作为一个初学者,什么是最好的方法来进行教育,并抑制解决同一问题的“n”种方法所带来的干扰呢?
我选择学习 Python 而不是 Ruby 的原因主要是巧合,因为我找到了一份可以使用 Python 帮助的兼职工作。现在已经过去了两个星期,事情发生了彻底的变化!凭借 IDLE 和 Python Essential Reference,一个又一个的启示接踵而至。就像一个古典物理学家如果重力消失了会感觉一样!
无论如何,我知道要有效地使用 Python,需要进行真正的实践。我认为比起语法,更重要的是我的思维方式。然而,尽管我做好了充分的准备,仍然有一件事情让我相当困扰 - Python 提供了太多的惯用语来执行同样的任务。例如,列表推导式和 filter(...)、apply(...) 和 eval(...) 等。虽然这些惯用语并非完全可替代,但我发现它们的主要目的在很大程度上重叠。
我知道它们使用起来一定有潜在的性能优势。然而,作为一个初学者,什么是最好的方法来进行教育,并抑制解决同一问题的“n”种方法所带来的干扰呢?
eval
:)。 - MAK