<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Mar 28, 2016 at 8:55 AM, Chris Angelico <span dir="ltr"><<a href="mailto:rosuav@gmail.com" target="_blank">rosuav@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">The whole point of the context manager is that it defines the notion<br>
"go out of scope". </blockquote><div><br></div><div>of course it does -- very useful but a lot of extra for a siple read this file then close it right away, for the casual scripting user :-)</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">But if you want the simple syntax, the easiest way<br>
is to create a helper:<br>
<br>
def write_file(filename, contents):<br>
    with open(filename, "w") as f:<br>
        f.write(contents)<br>
<br>
write_file('a_file', some_stuff)<br></blockquote><div><br></div><div>So I guess this comes around to the OPs point -- a helper like that should be built in, and easy and obvious to scripting user.</div><div><br></div><div>I don't think it should be astring method, but...</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Or, if you're writing a quick one-off script, just use the line you </blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">have above, and don't worry about guaranteed closing.</blockquote><div><br></div><div>And that comes back around to my original post on this thread -- we should just tell scripting users to do that :-) </div><div><br></div><div>but I think it was Nick's point that Python is used for scripting and "real" system development, so it's hard to communicate best practices for both...</div><div><br></div><div>given that, I'm kind of liking "write_file"</div><div><br></div><div>It solves Nick's mental model issue" " want to write some stuff to a file", rather than "I want to create a file object, then write stuff to it"</div><div><br></div><div>-CHB</div></div><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><br>Christopher Barker, Ph.D.<br>Oceanographer<br><br>Emergency Response Division<br>NOAA/NOS/OR&R            (206) 526-6959   voice<br>7600 Sand Point Way NE   (206) 526-6329   fax<br>Seattle, WA  98115       (206) 526-6317   main reception<br><br><a href="mailto:Chris.Barker@noaa.gov" target="_blank">Chris.Barker@noaa.gov</a></div>
</div></div>