Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #39464
| From | Serhiy Storchaka <storchaka@gmail.com> |
|---|---|
| Subject | Re: NamedTemporaryFile does not match documentation |
| Date | 2013-02-21 23:30 +0200 |
| References | <CANy1k1g4eJ+9aBArQm_r8k0iKKuaxf_wzKjdEjOkj7M0J7=N8A@mail.gmail.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.2200.1361482221.2939.python-list@python.org> (permalink) |
On 21.02.13 22:46, Jason Friedman wrote:
> Python 3.2.2 (default, Feb 14 2012, 08:06:31)
> [GCC 4.1.2 20080704 (Red Hat 4.1.2-50)] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
>>>> from tempfile import NamedTemporaryFile
>>>> f = NamedTemporaryFile(delete=False)
>>>> f
> <tempfile._TemporaryFileWrapper object at 0x7f867e8bc050>
>>>> f.name
> '/tmp/tmpqxnd_4'
>>>> f.write("Hello World!\n")
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> TypeError: 'str' does not support the buffer interface
>
> Or, maybe I am reading the documentation incorrectly. My goal is to
> be able to write to that temporary file along the lines of "f.write()"
> or "with open(f) as writer ...".
NamedTemporaryFile by default opens a file in binary mode ('w+b'). Write
bytes or specify text mode.
>>> f.write(b"Hello World!\n")
13
>>> ft = NamedTemporaryFile('w+', delete=False)
>>> ft.write("Hello World!\n")
13
Back to comp.lang.python | Previous | Next | Find similar | Unroll thread
Re: NamedTemporaryFile does not match documentation Serhiy Storchaka <storchaka@gmail.com> - 2013-02-21 23:30 +0200
csiph-web