reading from a text file

Tim Golden mail at timgolden.me.uk
Mon Nov 30 10:41:38 EST 2009


Olof Bjarnason wrote:
> 2009/11/27 baboucarr sanneh <sanneh27 at hotmail.com>:
>> hi all
>>
>> i would like to create a python program that would read from a text file and
>> returns one result at random.
>> e.g
>> in the text file i have these data
>>
>> 1.hello
>> 2.my name
>> 3.is
>> 4.World
>>
>> Your help is highly appreciated..thnx in advance
> 
> Hi babourarr;
> 
> import random
> with open("c:/test.txt") as f:
>   lines = f.read().splitlines()
> random_line = lines[random.randrange(len(lines))]
> print(random_line)

Or, slightly more simply:

import random
with open ("c:/test.txt") as f:
  print random.choice (list (f))


You need the list () because random.choice only works
on a finite iterable.

TJG



More information about the Python-list mailing list