Есть ли способ взломать функцию Python (def) для возврата результатов по ссылке даже для неизменяемых типов?Python: переменные по ссылкам (hack)
приложение предложение (своп в качестве подпрограммы):
def swap(a, b):
.....a,b = b,a
Примечание:
def swap(a, b):
.....return b,a
работает как функция, не ответ на вопрос!
Например, существует функция random.shuffle (a), которая работает на месте. Моя идея - вызвать функцию, написанную на языке Fortran/C++, и вызвать их через Python. Он работает, но имеет и недостатки.
примечание:
И «lambda
», и «def
» (как функция) имеют следующую проблему: a, b = swap(a, b)
, которая требует ухода за порядком переменных. В моем предложении (если это было возможно) подпрограмма используется как: swap(a, b)
, поэтому нет необходимости заботиться о порядке переменной.
Я не знаю, если я получил это право, но вы, кажется, ищет 'функции lambda'. Можете ли вы дать более подробное объяснение и пример? – heltonbiker
Нет, и вы не хотите этого точно. – JBernardo
И «лямбда», и «def» (как функция) имеют следующую проблему: 'a, b = swap (a, b)', которая требует осторожности порядка переменных. В моем предложении (если это было возможно) подпрограмма используется как: 'swap (a, b)', поэтому нет необходимости заботиться о порядке переменной. – Developer