哪个更像Pythonic方式?

时间:2011-10-27 09:30:27

标签: python

我想编写一个函数来创建一个大小为NxN的空方阵。 我有两种方法可以写这个:

1:

s_matrix = []
create_empty_square_matrix(s_matrix, N)

2:

s_matrix = empty_square_matrix(N)

(当然,2两个函数会有所不同。函数create_empty_square_matrix就像一个过程 - 只对s_matrix进行操作。函数empty_square_matrix create& return a matrix)

哪种方式更像Pythonic&更清晰的?

您对命名风格有什么建议吗?我不确定 empty_square_matrix &的 create_empty_square_matrix

1 个答案:

答案 0 :(得分:3)

我总是喜欢第二种方式。

第一个问题是您将要写入的对象作为参数(s_matrix)传递,并且函数的调用者必须知道必须传递一个空列表。如果调用者传递了一个dict或一个非空的列表会发生什么?

顺便说一句,如果你想进行矩阵计算,你应该看看NumPy库,它提供了标准Python所没有的许多东西。