Pandas isn't primarily intended for manipulating Excel files, and XLS and XLSX are separate formats, not just differences in naming convention. Because DataFrames aren't intended to represent either XLS or XLSX format, you're juggling three different formats, and the format change might be in either XLS -> DF or DF -> XLSX. That suggests that you probably should not use Pandas DataFrames for this task. If you need to do other manipulations with Pandas DF, then you can look into reordering DF columns.
Assuming you're really trying to reformat the files and do Excel-style manipulations, I recommend openpyxl, although there are a few competing libraries you might also find useful. (Also, as @lei-yang notes below, openpyxl may not be able to read XLS files - although other packages listed there should be able to do so.)
If you're not doing any manipulations of the file itself, and don't care about having the file names match the internal formats, the Python os
and shutil
libraries can cover that.