<p>I use a 3rd party tool that outputs a file in Unicode format.  However, I prefer it to be in ASCII. The tool does not have settings to change the file format.</p>

<p>What is the best way to convert the entire file format using Python?</p>

I think this is a deeper issue than you realize
. Simply changing the file from Unicode into ASCII is easy, however, getting all of the Unicode characters to translate into reasonable ASCII counterparts (many letters are not available in both encodings) is another.
This Python Unicode tutorial may give you a better idea of what happens to Unicode strings that are translated to ASCII:
http://www.reportlab.com/i18n/python_unicode_tutorial.html
Here's a useful quote from the site:
Python 1.6 also gets a "unicode"
  built-in function, to which you can
  specify the encoding:
```
```
> >>> unicode('hello') u'hello'
> >>> unicode('hello', 'ascii') u'hello'
> >>> unicode('hello', 'iso-8859-1') u'hello'
> >>>
```
```
All three of these return the same
  thing, since the characters in 'Hello'
  are common to all three encodings.
Now let's encode something with a
  European accent, which is outside of
  ASCII. What you see at a console may
  depend on your operating system
  locale; Windows lets me type in
  ISO-Latin-1.
```
```
> >>> a = unicode('André','latin-1')
> >>> a u'Andr\202'
```
```
If you can't type an acute letter e,
  you can enter the string 'Andr\202',
  which is unambiguous.
Unicode supports all the common
  operations such as iteration and
  splitting. We won't run over them
  here.