Resolved: Questions about the transformation function
On the line:
a,b = trans((a,b))
I understand that the p becomes (a,b), but what happens next?
Ler's say we take trans_3
. Can someone explains what happens inside the function when we call trans_3((a,b))
?
Hey Bondan,
Thank you for your question!
Let me suggest a modification to the code, where I have included 3 print
-statements on lines 6, 14, 22, and 37.
Then, let's study the for
-loop on lines 31-35, where I have reduced the number of iterations to 3.
On line 32, we assign the variable trans
one of the 3 functions - trans_1
, trans_2
, or trans_3
. From the output, we can see that the choice during the first iteration was trans_3
. On line 33, we modify the integers a
and b
using the function trans_3
. What happens in this function is the following:
1. The variable p
represents the tuple (a, b)
2. Line 18 - x
equals the first item in p
, namely a
3. Line 19 - y
equals the second item in p
, namely b
4. Line 20 - x1
is computed according to Transformation 3, using variable x
5. Line 21 - y1
is computed according to Transformation 3, using variable y
6. Line 23 - the function returns the variables x1
and y1
in a tuple
Going back to line 33, variable a
is assigned the value x1
while variable b
is assigned the value y1
. These are then appended to the lists a1
and b1
, respectively.
Then, the second iteration comes, where, this time, the function trans_1
is chosen. The whole procedure from above repeats.
Finally, trans_3
is chosen again during the third iteration.
Hope this helps!
Kind regards,
365 Hristina
Oh I get it now! It's like calling multiple items wtih one variable. Thank you for the answer Hristina