I am using the following script :
header = self.document.add_paragraph(style='Heading 1')
header.style.font.name = 'Arial'
header.style.font.size = Pt(16)
header.add_run('Header One')
The result is that "Header One" get 'Calibri'.
I am using the following script :
header = self.document.add_paragraph(style='Heading 1')
header.style.font.name = 'Arial'
header.style.font.size = Pt(16)
header.add_run('Header One')
The result is that "Header One" get 'Calibri'.
This is a legitimate bug even with python-docx version 0.8.5. If you were to change the font name of the style 'Normal', it works (as shown in the examples on the python-docx manuals), but this does not work for the 'Heading 1' style.
One workaround is to create a new heading style that takes Heading 1 as a base style and then modify the new style's font name & size: