title: Randomize/shuffle a list/array in Python?
body: <p>I'm completely new to Python and don't have programming experience. I have this(which I'm not sure if it's a list or array):</p>
  
  <pre><code>from random import choice
  while True:
  s=['The smell of flowers',
  'I remember our first house',
  'Will you ever forgive me?',
  'I\'ve done things I\'m not proud of',
  'I turn my head towards the clouds',
  'This is the end',
  'The sensation of falling',
  'Old friends that have said good bye',
  'I\'m alone',
  'Dreams unrealized',
  'We used to be happy',
  'Nothing is the same',
  'I find someone new',
  'I\'m happy',
  'I lie',
  ]
  l=choice(range(5,10))
  while len(s)&gt;l:
  s.remove(choice(s))
  print "\nFalling:\n"+'.\n'.join(s)+'.'
  raw_input('')
  </code></pre>
  
  <p>Which randomly selects 5-10 lines and prints them, but they print in the same order; ie "I lie" will always be at the bottom if it is selected. I was wondering how I can shuffle the selected lines, so that they appear in a more random order?</p>
  
  <p>Edit:
  So when I try to run this:</p>
  
  <pre><code>import random
  s=['The smell of flowers',
  'I remember our first house',
  'Will you ever forgive me?',
  'I\'ve done things I\'m not proud of',
  'I turn my head towards the clouds',
  'This is the end',
  'The sensation of falling',
  'Old friends that have said good bye',
  'I\'m alone',
  'Dreams unrealized',
  'We used to be happy',
  'Nothing is the same',
  'I find someone new',
  'I\'m happy',
  'I lie',
  ]
  
  picked=random.sample(s,random.randint(5,10))
  print "\nFalling:\n"+'.\n'.join(picked)+'.'
  </code></pre>
  
  <p>It seems to run, but doesn't print anything. Did I type this correctly from Amber's answer? I really have no clue what I'm doing.</p>