Когда я определяю функции, в каком порядке я должен помещать параметры?

Мне часто трудно принять решение, и я непоследователен. Могу ли я следовать каким-то правилам?

Например:

def remove_except(haystack, needle, exclude_value):
    for key in hackstack:
        if key in needle and haystack[key] != exclude_value:
            hackstack.pop(key)

легко может быть:

def remove_except(needle, exclude_value, haystack):
    for key in hackstack:
        if key in needle and haystack[key] != exclude_value:
            hackstack.pop(key)

Не идеальный пример, потому что я предпочитаю ставить изменяемую переменную в качестве первого параметра, например, стог сена, и это может быть даже условностью, но в остальном я не уверен, что делать.

Меня интересует больше языков, чем просто Python.

7
задан peoro 19 January 2011 в 14:45
поделиться