title: Replace an item in list if it starts with a precise character
body: <p>I am fairly new to python and have a task to solve.
  I have a list that is made of strings made of hexadecimal numbers. I want to replace some items with '0', if they do not start with the right characters.
  So, for example, I have</p>
  <pre><code>List = ['0800096700000000', '090000000000025d', '0b0000000000003c', '0500051b014f0000']
  </code></pre>
  <p>and I want, say, to only have the data that starts with &quot;0b&quot; and &quot;05&quot;, and I want to replace the others by &quot;0&quot;.</p>
  <p>For now, I have this:</p>
  <pre><code>multiplex = ('0b', '05')
  List = ['0800096700000000', '090000000000025d', '0b0000000000003c', '0500051b014f0000']
  List = [x for x in List if x.startswith(multiplex)]
  </code></pre>
  <p>This gives me the following result:</p>
  <pre><code>['0b0000000000003c', '0500051b014f0000']
  </code></pre>
  <p>Although I would like the following result:</p>
  <pre><code>['0', '0', '0b0000000000003c', '0500051b014f0000']
  </code></pre>
  <p>I cannot index the specific item I wish to change because the actual data is way too large for that...</p>
  <p>Can someone help?</p>