This is not an answer, just following BillCook's advice and trying out GAP from Sage
sage: g = gap.Group(['(1,2,3,4,5)','(2,3,5,4)']); g Group( [ (1,2,3,4,5), (2,3,5,4) ] ) sage: g.ConjugacyClasses() [ ConjugacyClass( Group( [ (1,2,3,4,5), (2,3,5,4) ] ), () ), ConjugacyClass( Group( [ (1,2,3,4,5), (2,3,5,4) ] ), (2,3,5,4) ), ConjugacyClass( Group( [ (1,2,3,4,5), (2,3,5,4) ] ), (2,4,5,3) ), ConjugacyClass( Group( [ (1,2,3,4,5), (2,3,5,4) ] ), (2,5)(3,4) ), ConjugacyClass( Group( [ (1,2,3,4,5), (2,3,5,4) ] ), (1,2,3,4,5) ) ]
and Sage as well
sage: G = PermutationGroup(['(1,2,3,4,5)','(2,3,5,4)']); G Permutation Group with generators [(2,3,5,4), (1,2,3,4,5)] sage: g = G.gens()[0]; g (2,3,5,4) sage: g = G.gens()[1]; g (1,2,3,4,5) sage: G.order() 20 G.conjugacy_classes_subgroups() [Subgroup of (Permutation Group with generators [(2,3,5,4), (1,2,3,4,5)]) generated by [()], Subgroup of (Permutation Group with generators [(2,3,5,4), (1,2,3,4,5)]) generated by [(2,5)(3,4)], Subgroup of (Permutation Group with generators [(2,3,5,4), (1,2,3,4,5)]) generated by [(2,3,5,4)], Subgroup of (Permutation Group with generators [(2,3,5,4), (1,2,3,4,5)]) generated by (1,2,3,4,5)], Subgroup of (Permutation Group with generators [(2,3,5,4), (1,2,3,4,5)]) generated by [(2,5)(3,4), (1,5,4,3,2)], Subgroup of (Permutation group with generators [(2,3,5,4),(1,2,3,4,5)]) generated by [(2,3,5,4), (2,5)(3,4), (1,5,4,3,2)]] # this is an ugly hack: for x in G.conjugacy_classes_subgroups(): s=str(x).replace('Subgroup of (Permutation Group with generators [(2,3,5,4), (1,2,3,4,5)]) generated by ','') print s.replace('[','<').replace(']','>') <()> <(2,5)(3,4)> <(2,3,5,4)> <(1,2,3,4,5)> <(2,5)(3,4), (1,5,4,3,2)> <(2,3,5,4), (2,5)(3,4), (1,5,4,3,2)>
to show the results. I think there is a slick trick to know but I don't remember it.