Looping with function having an object as a parameter
Consider the following code:
def Sier(H):
for i in list(range(1,H.order())):
H.disjoint_union(H)
return H
f=Sier(graphs.CompleteGraph(5))
f.order()
I get the output as 5. But, what I actually wanted was:
def Sier(n,k):
l=list(range(1,k))
g=graphs.CompleteGraph(n)
for i in l:
g=g.disjoint_union(graphs.CompleteGraph(n))
return g
k=Sier(5,5)
k.order()
which gives me the correct output as 25. I ask as to what is the problem with the first code, like how to get $k$ disjoint copies of a graph $H$ with order $k$?
You do not make any assignment in the first code and your graph
H
remains unchanged.