Hi,
Expression zip(r, center) generates list (array) of pairs [(1, 10), (2, 20), (3, 30)] if r=[1, 2, 3] and center=[10,20,30], for example.
The right side generates a list where each element generates by equation "ri/1e-9 - ci". Values of variables ri and ci are taken in from the list, generated by zip(r, center). Expression "for ri, ci in zip(r, center)" allows to iterate over each pair in zip(r, center) where the fisrt element in pair assigns to ri, and the second to ci.
Because lists r and center contain 3 values, the resulting "zipped" list also contain 3 pairs and the expression [ri/1e-9 - ci for ir, ci in zip(r, center)] also generates three values. Thus, result can be assigned to three variables x, y, z directly.
In pseudocode:
r = [1, 2, 3];
center = [10, 20, 30];
For i = 1, 2, 3 do
res[i] = r[i]/1e-9 - center[i]
x = res[1];
y = res[2];
z = res[3];