Julia有Python的with
的等价物吗?也许作为一个宏?例如,这对于自动关闭打开的文件非常有用。
使用do
块。do块上的文档在这里。
下面是一个如何在Julia:中执行Python的常见with open(filename) as my_file
的示例
open("sherlock-holmes.txt") do filehandle
for line in eachline(filehandle)
println(line)
end
end
上面的例子也来自Julia的wikibooks。
尽管do
块语法与Python的with
语句有某些相似之处,但没有完全等效的语句。这在GitHub的"确定性破坏的with
"一文中有更详细的讨论。问题的结论是,这个结构应该添加到Julia中,尽管还没有建立这样的语法或计划。