Python to delete a row in excel spreadsheet

Jane picture Jane · Apr 12, 2011 · Viewed 45.2k times · Source

I have a really large excel file and i need to delete about 20,000 rows, contingent on meeting a simple condition and excel won't let me delete such a complex range when using a filter. The condition is:

If the first column contains the value, X, then I need to be able to delete the entire row.

I'm trying to automate this using python and xlwt, but am not quite sure where to start. Seeking some code snippits to get me started... Grateful for any help that's out there!

Answer

eumiro picture eumiro · Apr 12, 2011

Don't delete. Just copy what you need.

  1. read the original file
  2. open a new file
  3. iterate over rows of the original file (if the first column of the row does not contain the value X, add this row to the new file)
  4. close both files
  5. rename the new file into the original file