from collections import Counter
def myfunc(yourWord, seq):
c1 = Counter(yourWord)
c2 = Counter(seq)
return not (c2 - c1)
def runMe(filePath):
with open(filePath,"r") as f:
results=[]
data = f.readlines()
for x in data:
count=0
for y in data:
if myfunc("".join(y.strip().split(",")), x.strip().split(",")):
count=count+1
results.append((x.strip(),count))
return results
if __name__ == '__main__':
print runMe("input")
print runMe("myinput")
输入文件:
^{pr2}$
我的输入文件:A,B
A,C,B
A
C,B
结果:[('A,B,C', 3), ('D,E,F,X,Z', 1), ('P,Q,R', 1), ('A,B,C,F', 1), ('D,P,Q', 1), ('E,X,R', 1), ('W,Y', 2), ('A,C,P,D,B', 1), ('R,W,Y', 1)]
[('A,B', 2), ('A,C,B', 1), ('A', 3), ('C,B', 2)]
多重剥离是可以避免的,但你会得到一个大致的想法。。。在