2014-01-16 23 views
-1

파이썬에서 입력으로 C 구조를 사용하여 사전 만들기 -내가 이런 파일의 구조를 가지고 2.3

{ ATTR_u, 
    READ_WRITE | ATR_DFLAG_SELEQ | ATR_DFLAG_SCGALT, 
    ATR_TYPE_ARST, 
    NULL_VERIFY_DATATYPE_FUNC, 
    verify_value_user_list 
} 

난 지금이 ​​

처럼 그것의 사전을하고 싶습니다
my_dict = {'ATTR_u':[READ_WRITE | ATR_DFLAG_SELEQ | ATR_DFLAG_SCGALT,ATR_TYPE_ARST,NULL_VERIFY_DATATYPE_FUNC,verify_value_user_list]} 

누군가이 사전을 만드는 방법을 설명해 주시겠습니까? 내가 가지고있는 유일한 아이디어는 파일을 읽고 이름 값 쌍인 사전을 만드는 것입니다.하지만이 작업을 수행 할 수 있습니까? 당신이 ... 무엇을 찾고있는 당신의 질문로부터 완전히 명확하지 않지만

+1

에게 생각? –

+0

예 그들은 문자열입니다 – user3203406

답변

1
my_text = """{ ATTR_u, 
    READ_WRITE | ATR_DFLAG_SELEQ | ATR_DFLAG_SCGALT, 
    ATR_TYPE_ARST, 
    NULL_VERIFY_DATATYPE_FUNC, 
    verify_value_user_list 
}""" 

my_text = my_text.strip("{}") 
my_list = [item.strip() for item in my_text.split(",")] 
my_dict = {my_list[0]:my_list[1:]} 

나는이 목록의 항목은 문자열로되어 있습니까 그것은

+0

실제로는 구조가 파일에있는 단순한 파일이 아니므로 파일을 한 줄씩 읽은 다음 목록에 저장해야합니다 (아마도)! 그래서 그럴 경우 re.search (r '\ {', word)와 같이 끝 대괄호를 검색하면됩니다. 일단 끝나면 사전 구성을 시작합니다. 여기서 Key는 ATTR_u가 될 것이고 값을 나머지 값으로 바꿀 수 있습니다. – user3203406

+0

'my_text = open ("some_file.txt"). read()'.... 그 코멘트의 나머지 부분이 무엇을 의미하는지 모르시겠습니까? –

+0

내가 무슨 뜻인지 이것은 함수에서 처리 될 프로그램의 일부이며 전체 파일을 함수의 매개 변수로 전달하지 않지만 모든 행을 목록에 저장 한 다음 목록을 인수로 전달합니다. 함수. – user3203406

관련 문제