Python includes the built in max() function. However, despite it being built in it is not a keyword. That is to say, you are allowed to do max=4. This makes sense since the maximum of something comes up a lot. But! If you use max as a variable, then it disables use of the max function in that scope.
So if you do:
max = 4
max(1, 2)
You will get an error of int object not callable. Again, makes sense. But is there any way to specify that you would like the max function? Like a std.max()? This goes for all other built in functions as well.
minandmaxare great. Thus there are times where you might create internal naming conflicts so that your API is user friendly.things, usemax_thing.maxfunction, for example, if you were NumPy and you hadnumpy.max, it'd make sense to use the same name as a builtin. Formax = 4? No way that's part of your API. Call itmax_or something.classormaxorfilebefore, too, but every language has its sacrifices you have to make. I personally use OOP-conventions for all of my names (unless I'm working on other people's code), so for me, it'd bemaxValueormaxThingName. It's always good to be descriptive. If it's just a throwaway variable that doesn't need to be descriptive, call itm? I really, really, really wouldn't name things after builtins.