2016-09-20 7 views
-1

저는 Python을 처음 사용합니다. 여기 분할 기능을 사용하여 형식을동적으로 키와 값을 사전에 작성합니다.

121212-pr-ba-su_re;m1;1;10000 

내가 푼 (PR-BA-SU) 함량을 갖는 파일에 여러 라인을 읽고있다. 내가 작성한 코드를 보아라. Prefix-base-suffix를 키로 저장하고 그 값을 사전에 루프의 첫 번째 줄에서 추출한 ID로 저장하려고합니다.

data ={}  
    f = open('var_test.txt') 
    for line in f: 
      part,m,t,ID = line.split(';',3) 
      partnumb,r = part.split('_',1) 
      item,prefix,base,suffix =partnumb.split('-',3) 
      data[prefix'-'base'-'suffix] =ID 

(나는. 다른 목록에 값으로 키를 대체 할 따라서, 나는. 사전을 만들려고하고 있습니다)하지만 난 내가 시도

 data(getattr([prefix'-'base'-'suffix])) =PID 
          ^SyntaxError: invalid syntax 

구문 오류와 같은 오류를 얻고있다 getattr() 함수를 사용하고 업데이트 기능을 사용할 수 있지만 아무런 도움이되지 않습니다. 아무도 도와 줄 수 있습니까? 고마워.

+1

'데이터 [접두사 + '-'+베이스 + '-'+ 접미사]를 대체하여 기대하는 결과를 얻을 수 = ID'를 사용하면 문자열을 연결하는 방법입니다. –

+0

@makino 그건 어떻게 문자열을 연결하지 ... – njzk2

답변

1

라인 data[prefix'-'base'-'suffix] =ID이 문제입니다. Python 구문이 유효하지 않습니다.

당신은 당신이 줄

data["{}-{}-{}".format(prefix, base, suffix)] = ID

관련 문제