Можно ли просто добавить знак.
Не совсем так.Вам также необходимо преобразовать число в процент, разделив его на 100. Тогда оно должно работать как положено.Это поведение Excel по умолчанию, а не только XlsxWriter's.
Вот пример:
import xlsxwriter
workbook = xlsxwriter.Workbook('percent.xlsx')
worksheet = workbook.add_worksheet()
format2 = workbook.add_format({'num_format': '0.0%'})
worksheet.set_column('D:D', 40, format2)
worksheet.write(0, 3, .1)
worksheet.write(1, 3, .25)
worksheet.write(2, 3, .5)
worksheet.write(3, 3, .75)
workbook.close()
А вот вывод:
