我知道在python中初始化变量/常量是没有必要的,但是我的教授仍然希望我们为实践初始化变量。
在我的程序中,我有一个文件,我为其分配了一个名称:
infile = open("studentinfo.txt", "r")
初始化常量“infile”有什么意义?我可以将其初始化为空字符串,还是应该将其作为空文件进行初始化?
答案 0 :(得分:4)
通常,当我们想要将变量设置为“特别没有值”时,我们使用None
:
infile = None
# ...several lines later...
infile = open(...)
答案 1 :(得分:3)
Python中的一种常见方法是将变量初始化为 if (HttpContext.Current.Response.Status.StartsWith("401"))
{
HttpContext.Current.Response.ClearContent();
Response.Redirect("~/myerrorpage.aspx?myerrormsg=you are not allowed");
}
(如果尚未使用)。这是对您希望该变量存在的代码的未来读者的一个信号,但它不会在以后使用它。
None
通过这种方式,在代码的其余部分中,您可以检查该值是否已设置...
infile = None
这种方法可以避免类型检查(uglly),并且您知道如果if infile is None:
infile = open(filename, 'r')
with infile:
data = infile.read()
不是infile
那么它必须是文件,因此您只能将其用作文件(&#34) ;鸭子打字")。例如,代码中的其他地方可能有......
None
这是非常易读的,如果从未设置过该文件,则不会中断。
答案 2 :(得分:0)
我猜你的教授希望你习惯用于未来语言的静态输入,在这种情况下我会使用TntLabel1->Caption = L"Δ";
TntLabel1->Caption = L"\x0394";
TntLabel1->Caption = (wchar_t) 0x0394;
TntLabel1->Caption = (wchar_t) 916;
来确保python将其视为一个字符串。这也最接近地模仿其他语言的语法,不像说:infile=str()
。如果您想要一个空文件类型infile=''
。
答案 3 :(得分:0)