Python:在list x的每个元素上使用的函数与将list x作为arg的函数

Python:在list x的每个元素上使用的函数与将list x作为arg的函数,python,function,list-comprehension,Python,Function,List Comprehension,有什么理由选择一种风格而不是另一种? 例如: VS 这是一个基本的例子,但它说明了这个想法。我最近一直在使用前者,因为我喜欢用简单的输入和输出编写函数(并不是说列表很复杂),但我不知道除了个人风格之外,还有什么真正的优点或缺点。我在文档和其他人的代码中看到了后者的更多内容,但我找不到任何资源来解决这个特定的想法 感谢第一个版本更为通用,它可以用于任何类型的数据结构中的值(或不用于任何结构,仅用于单个变量)。例如,如果您有一个字典,您可以使用它创建一个新字典,其中所有元素都增加了10。或者你可以写

有什么理由选择一种风格而不是另一种? 例如:

VS

这是一个基本的例子,但它说明了这个想法。我最近一直在使用前者,因为我喜欢用简单的输入和输出编写函数(并不是说列表很复杂),但我不知道除了个人风格之外,还有什么真正的优点或缺点。我在文档和其他人的代码中看到了后者的更多内容,但我找不到任何资源来解决这个特定的想法


感谢

第一个版本更为通用,它可以用于任何类型的数据结构中的值(或不用于任何结构,仅用于单个变量)。例如,如果您有一个字典,您可以使用它创建一个新字典,其中所有元素都增加了10。或者你可以写:

input_plus_10 = add_10(int(input("Please enter a number")))

第二个版本更具体,它只能用于列表。如果这是你唯一需要的东西,那也没关系(但你应该把它命名为
list\u add\u 10

)。

那么它听起来像是半打中的六个?但是,第二个版本的特殊性,这实际上是一个整体模块化和您需要什么的问题。
def add_10(list_):
   return [e + 10 for e in list_]

results = add_10(range(5))
input_plus_10 = add_10(int(input("Please enter a number")))