• Как писать правильнее?

    Lord_of_Rings
    @Lord_of_Rings
    Python developer
    Если говорить о красоте кода, то первый вариант лучше.
    Ответ написан
    Комментировать
  • Как писать правильнее?

    @antares4045
    первый вариант читабелнее (в терминальных случаях является безальтернативно верным)
    но он порождает новую переменную в контексте вызова, что сказывается как на времени так и на памяти: такой кейс вам приведу

    import datetime
    def fun(a,b):
        return a + b
    def fun2(arg1=1, arg2=2):
        return arg1 + arg2
    print("вариант 1")
    for j in range(10):
        start = datetime.datetime.now()
        for i in range(10000):
            a=fun(5, 6)
            fun2(arg2=a)
        end = datetime.datetime.now()
        print(end - start)
    print("===================")
    print("вариант 2")
    for j in range(10):
        start = datetime.datetime.now()
        for i in range(10000):
            fun2(arg2=fun(5, 6))
        end = datetime.datetime.now()
        print(end - start)

    вывод:
    вариант 1
    0:00:00.006048
    0:00:00.002219
    0:00:00.001937
    0:00:00.001955
    0:00:00.001893
    0:00:00.001886
    0:00:00.001879
    0:00:00.001891
    0:00:00.001895
    0:00:00.001887
    ===================
    вариант 2
    0:00:00.001541
    0:00:00.001551
    0:00:00.001551
    0:00:00.001546
    0:00:00.001564
    0:00:00.001535
    0:00:00.001537
    0:00:00.001546
    0:00:00.001516
    0:00:00.001704


    имеем в среднем раза в полтора разницу по скорости

    что вам важнее в данный момент сильно зависит от конкретной задачи
    Ответ написан
    1 комментарий