Directorio de búsqueda de Python, nombre base del archivo, sin extensión

Me preguntaba si habría alguna manera de modificar mi código para publicar solo el nombre base del archivo, en lugar de todo el archivo, incluida la extensión. Soy nuevo en Python, así que no sé mucho y No quiero modificar algo y que se rompa por completo.

import glob
import os
os.chdir( "C:/headers" )

txt = open( 'C:/files.txt', 'w' )

for file in glob.glob( "*.h" ):
    with open( file ) as f:
        contents = f.read()
        if 'struct' in contents:
            txt.write( "%s\n"%file )
txt.close()

Básicamente, lo que hace es buscar en un directorio de archivos de encabezado, y si tiene la cadena de estructura en el archivo, imprimirá los archivos en un archivo txt. Sin embargo, cuando lo ejecuto, el archivo txt se abre con todos los archivos listados, pero quiero que solo muestre el nombre base del archivo, no necesito el .h al final.

Por favor ayuda, gracias!

Respuestas a la pregunta(2)

Su respuesta a la pregunta