Можно ли передать целые числа в функцию по ссылке? И как вообще, с точки зрения Python, правильнее реализовать процедуру swap?
Что-то типа:
def swap(a, b):
c = a
a = b
b = c
>>> def swap(a, b):
... return b, a
>>> a, b = 5, 7
>>> a, b = swap(a,b)
>>> a, b
(7, 5)
demas
Можно ли передать целые числа в функцию по ссылке?
>>> a = 10; b = 10;
>>> id(a) == id(b)
True
И как вообще, с точки зрения Python, правильнее реализовать процедуру swap?для чого процедура?
>>> a = 15; b = 20
>>> a, b = b, a
>>> a, b
(20, 15)
def g(n,i):
k=0
while k<n:
k+=i
yield k
delta=1
for i in g(5,delta):
if i>4:
delta=2
print i
def error_g(n):
k=0
delta=1
while k<n:
k+=delta
delta1=(yield k)
if delta1:
delta=delta1
it=error_g(10)
for i in it:
if i==2:
it.send(2)
print i