Попробуйте это (редактирование заметки основано на рекомендации из комментария)
def check(output_name):
if not output_name.endswith(".pdf"):
return output_name + ".pdf"
output_name = "sample.pdf"
print(check(output_name))
print(output_name)
Эта строка (output_name += ".pdf"
) работает, но вы ничего не получаете, потому что не сказали функции вернуть Это. И вы не можете изменить переменную в функции без дополнительных усилий. Читайте о областях применения.
Если вы действительно не хотите, чтобы функция возвращала что-либо, или вы хотите, чтобы переменная изменялась функцией, сделайте следующее: ПРЕДУПРЕЖДЕНИЕ => Это плохая практика!
output_name = "sample.pdf"
def check():
global output_name
if not output_name.endswith(".pdf"): output_name += ".pdf"
check()
print(output_name)