[Tutor] Lists and While Loops

Ricky Brown rjbrow2 at gmail.com
Thu Mar 29 00:14:47 CEST 2012


Thank you all for your input it was extremely helpful. Robert you were spot
on with what I was trying to do, I tried to implement the random.sample
earlier but I couldn't see to get it too work -- running smoothly now.

Sorry for the trouble :)

On Wed, Mar 28, 2012 at 4:14 PM, Robert Sjoblom <robert.sjoblom at gmail.com>wrote:

> > I can't figure out
> > 1) How to remove "y" from the list and continue the loop; when I use
> .remove
> > etc. it runs once then give me the error that "y" is not in the list.
> >
> > I imagine the answer is quite simple I'm just getting really frustrated
> > trying to get this done any advice is appreciated.
>
> This should tell you why you run into your error:
>
> >>> message = "This is a message."
> >>> m_list = message.split()
> >>> m_list
> ['This', 'is', 'a', 'message.']
> >>> y = random.choice(m_list)
> >>> y
> 'message.'
> >>> m_list.remove(y)
> >>> m_list
> ['This', 'is', 'a']
> >>> y
> 'message.'
>
> You should probably move your y = random.choice() into the while loop.
>
> A simpler way than to remove items from a list is to use random.sample:
> >>> message = "This is a message."
> >>> m_list = message.split()
> >>> random.sample(m_list, len(m_list))
> ['is', 'This', 'a', 'message.']
>
> --
> best regards,
> Robert S.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20120328/37a9dd2f/attachment-0001.html>


More information about the Tutor mailing list