On Sun, Oct 21, 2018 at 1:47 AM Quentin Agren <quentin.ag...@gmail.com> wrote:
>
> Hi Robert,
>
> Far from being an expert, my two cents on this:
>
> - As I understand it, you should at least use the 'dir' parameter to 
> NamedTemporaryFile,  otherwise your files will be created in a '/tmp/'-like 
> directory that may be wiped clean by the OS now and then.

I am planning to set both the "dir" and "suffix" parameters if I go
this route and probably the "mode" parameter, too.

> - I seems that the only functionality you desire from tempfile is the 
> generation of a random file name (and maybe ensuring that no collision 
> occurs). You could use the 'random' standard library module to generate such 
> names easily (which is about what tempfile does under the hood)

It is important for me to have no name collisions however unlikely
such an event might be.

> import random
> CHARS = 'abcdefghijklmnopqrstuvw1234567890'
> def random_name(length):
>     return ''.join([random.choice(CHARS) for _ in range(length)])

It occurred to me to do this type of approach.  But why write this
myself when a standard library module may give me what I want with
only one or two lines of code?  When I searched online others have
recommended using the uuid library to generate names.  But one still
has to check that it does not already exist (However unlikely.) and
format the final filename.  And I would have to do the same for the
code snippet you supplied, adding a few additional lines of code.

But thank you for your input!  It may turn out that there is something
undesirable that I am unaware of in the NamedTemporaryFile approach,
other than what I really want is a NamedPermanentFile approach, but
the standard library naming suggest otherwise! ~(:>))

boB
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to