Python 最佳实践:初始化变量
Python best practices: initializing variables
当你有一个由方法设置的变量(比如字典)时,Python 的最佳实践建议是什么:
我应该先初始化my_var吗:
my_var = {}
my_var = do_something_and_return_var()
或直接设置:
my_var = do_something_and_return_var()
首先设置它的好处是你可以直接告诉 my_var 应该是什么类型(虽然我不使用 IDE,但我想当你这样做时它会有所帮助).
但另一方面,在将其设置为实际值之前将其设置为空字典似乎有点没用。
谢谢
你不需要先写my_var = {}
。如果你想指定你应该使用的类型 type hints.
from typing import Dict
def do_something_and_return_var() -> Dict[str, str]
...
将值设置为空字典没有任何优势,因为当您这样做时:
my_var = {}
名称my_var 简单地绑定到存储在某个内存位置的对象空字典。所以如果你的函数 do_something_and_return_var returns 让我们说一个整数值,那么名称 my_var 将绑定到这个 int 值对象,而你的空字典对象仍然存储在一些没有名称的内存位置绑定到它,后来被垃圾收集器删除
当你有一个由方法设置的变量(比如字典)时,Python 的最佳实践建议是什么:
我应该先初始化my_var吗:
my_var = {}
my_var = do_something_and_return_var()
或直接设置:
my_var = do_something_and_return_var()
首先设置它的好处是你可以直接告诉 my_var 应该是什么类型(虽然我不使用 IDE,但我想当你这样做时它会有所帮助). 但另一方面,在将其设置为实际值之前将其设置为空字典似乎有点没用。
谢谢
你不需要先写my_var = {}
。如果你想指定你应该使用的类型 type hints.
from typing import Dict
def do_something_and_return_var() -> Dict[str, str]
...
将值设置为空字典没有任何优势,因为当您这样做时:
my_var = {}
名称my_var 简单地绑定到存储在某个内存位置的对象空字典。所以如果你的函数 do_something_and_return_var returns 让我们说一个整数值,那么名称 my_var 将绑定到这个 int 值对象,而你的空字典对象仍然存储在一些没有名称的内存位置绑定到它,后来被垃圾收集器删除