On 06/16/2017 10:36 AM, Thomas Jollans wrote:
On 08/06/17 15:42, Antoine Pietri wrote:
A very common pattern when dealing with temporary files is code like this:
with tempfile.TemporaryDirectory() as tmpdir: tmp_path = tmpdir.name os.chmod(tmp_path) os.foobar(tmp_path) open(tmp_path).read(barquux)
py> import tempfile py> with tempfile.TemporaryDirectory() as tmpdir: ... print(tmpdir, type(tmpdir)) ... /tmp/tmp2kiqzmi9 <class 'str'> py>
Interesting... on 3.4 and 3.5 I get:
--> import tempfile
--> tempfile.TemporaryDirectory() <TemporaryDirectory '/tmp/tmpy32czx2v'>
--> with tempfile.TemporaryDirectory() as tmpdir: ... tmpdir ... '/tmp/tmpo63icqfe'
So a <TemporaryDirectory> if used directly, and a <str> if used as a context manager. I don't have a copy of 3.6 nor the future 3.7 handy, so maybe it changed there?