如 List = ['az046!1', '7sas!a', '54821s', '!!', 'ew549#0', '12345p', '5qqs%$s', '67890b', 'op564%4']!a'为b1a3c2a1,'54821s'为b5a1,'!!'为c2,'ew549#0'为a2b3c1b1,'12345p'为b5a1,'5qqs%$s'为b1a3c2a1,'67890b'为b5a1,'op564%4'为a2b3c1b1
若将a记为英文,b为数字,c为特殊字符
则'az046!1'为a2b3c1b1(2个英文+3个数字+1个特殊字符+1个数字),'7sas
因此列表中的类型有a2b3c1b1、b1a3c2a1、b5a1、c2这四种。
想要将同类型的字符串,按照abc的顺序排列组合生成新的列表new_List = []
比如同类型的a2b3c1b1中,有'az046!1','ew549#0','op564%4'这三个,将这三个字符串按照abc的顺序重新组合。
会生成az046!1、ew046!1、op046!1、az549!1、az564!1、az046#0、az046%4、ew549#0、az549#0……等等。
意思是将所有的a2b3c1b1中的a2、b3、c1、b1全部重新组合一遍,但不改变a2b3c1b1的顺序。
求如何用python代码实现以上功能,尽量注释说明下部分代码的作用!