title: Python list filtering: remove subsets from list of lists
body: <p>Using Python how do you reduce a list of lists by an ordered subset match <code>[[..],[..],..]</code>? </p>
  
  <p>In the context of this question a list L is a <strong><em>subset</em></strong> of list <code>M</code> if <code>M</code> contains all members of <code>L</code>, and in the same order. For example, the list [1,2] is a subset of the list [1,2,3], but not of the list [2,1,3].</p>
  
  <p><em>Example input:</em></p>
  
  <pre><code>a. [[1, 2, 4, 8], [1, 2, 4, 5, 6], [1, 2, 3], [2, 3, 21], [1, 2, 3, 4], [1, 2, 3, 4, 5, 6, 7]]
  b. [[2, 16, 17], [1, 2, 3, 4, 5, 6, 7], [1], [1, 2, 3, 4], [1, 2], [17, 18, 19, 22, 41, 48], [2, 3], [1, 2, 3], [50, 69], [1, 2, 3], [2, 3, 21], [1, 2, 3], [1, 2, 4, 8], [1, 2, 4, 5, 6]]
  </code></pre>
  
  <p><em>Expected result:</em></p>
  
  <pre><code>a. [[1, 2, 4, 8], [2, 3, 21], [1, 2, 3, 4, 5, 6, 7]]
  b. [[2, 16, 17], [1, 2, 3, 4, 5, 6, 7], [17, 18, 19, 22, 41, 48], [50, 69],  [2, 3, 21], [1, 2, 4, 8], [1, 2, 4, 5, 6]]
  </code></pre>
  
  <p><em>Further Examples:</em></p>
  
  <p><code>L = [[1, 2, 3, 4, 5, 6, 7], [1, 2, 5, 6]]</code> - No reduce</p>
  
  <p><code>L = [[1, 2, 3, 4, 5, 6, 7],</code> <strike><code>[1, 2, 3]</code></strike>, <code>[1, 2, 4, 8]]</code> - Yes reduce</p>
  
  <p><code>L = [[1, 2, 3, 4, 5, 6, 7], [7, 6, 5, 4, 3, 2, 1]]</code> - No reduce</p>
  
  <p><em>(Sorry for causing confusion with the incorrect data set.)</em></p>