2014-12-05 3 views
0

프로그램에 입력으로 들어갈 속성 목록이있는 txt 파일을 사용하는 스크립트가 있습니다. 각 속성에 대해 스크립트의 조건을 충족하는 경우 속성 이름을 인쇄합니다. 그러나 각 속성은 여러 번 만족 될 수 있으며 출력물이 여러 번 인쇄됩니다. 이 지금하고 싶습니다 :Python에서 print 문 형식 지정

condition 1 satisfied by A,B,C,D 
condition 2 satisfied by A,B 
condition 3 satisfied by B,D 

어떻게하면됩니까? 내 전류 출력 (의사 파이썬 코드에서)이 약

A 
A 
condition 3 not satisfied by A 
B 
B 
B 
condition 1 not satisfied by C 
condition 2 not satisfied by C 
C 
D 
condition 2 not satisfied by D 
D 
+0

인쇄하기 전에 어떤 형식이 만족스러운 속성입니까? –

+1

코드 및 데이터의 [최소 예제] (http://stackoverflow.com/help/mcve)를 보여주고 예상되는 결과물과 실제 출력물의 차이점과 지금까지 시도한 내용을 설명하십시오. – jonrsharpe

답변

0

방법처럼 보인다

import collections 
result = collections.defaultdict(list) 
for attr in [A, B, C, D]: 
    for cond in [condition1, condition2, ...]: 
    if attr satisfies cond: 
     result[cond].append(attr) 

print result 

출력 : 나는 당신이 원하는 무엇 확실하지 않다

{cond1: [A, B], cond2: [A], cond3: [C,D], ...} 

. 당신은 당신의 입력이 어떻게 보이고 당신이 원하는 것을 출력으로 명확하게 (충분하게) 말하지 않았습니다.