title: Read/Write text file
body: <p>I am trying to change a some lines in a text file without affecting the other lines. This is what's inside the text file called "text.txt"</p>
  
  <pre><code>this is  a test1|number1
  this is a test2|number2
  this is a test3|number2
  this is a test4|number3
  this is a test5|number3
  this is a test6|number4
  this is a test7|number5
  this is a test8|number5
  this is a test9|number5
  this is a test10|number5
  </code></pre>
  
  <p>My objective is to change the line 4 and line 5 but keep the rest same.</p>
  
  <pre><code>mylist1=[]
  for lines in open('test','r'):
      a=lines.split('|')
      b=a[1].strip()
      if b== 'number3':
          mylist1.append('{}|{} \n'.format('this is replacement','number7'))
      else:
           mylist1.append('{}|{} \n'.format(a[0],a[1].strip()))
  myfile=open('test','w')
  myfile.writelines(mylist1)
  </code></pre>
  
  <p>Even though the code works, I am wondering if there is any better and efficient way to do it? Is it possible to read the file just by line number? </p>