Idiomatic for me would be this simple, short, clear thing:
def greeter(name):
def greet():
print(f"Hello {name}")
return greet
greet1 = greeter('Joe')
greet2 = greeter('Sue')
greet1()
greet2()
Or else a class. I don't quite understand why you'd want a global in a module not mean the canonical 'this singletone thingie configures this module' ?