에서 하나의 값을 부를 수 있습니다. 여기저기서 몇 단어를 섞어 보았습니다. 이 예는 현재까지의 의도보다 약간 명확하게 작성해야합니다.2 차원 사전을 만들면
예 : 나는 .CSV 파일은 "file.csv"라는 한 :
T2Y;Brad;0001
K5;Jan;0002
T21;En;3838
T22;aps;3804
T11;Jyke;3957
T08;John;3825
K05;Tim;0001
그리고 때 당신이 그렇게처럼 내 함수를 호출하면 값을 호출 할 수 있습니다
>>> dict = function("file.csv")
당신 이렇게 부탁하십시오 :
>>> dict['Brad']['code']
'T2Y'
>>> dict['John']['name']
'John'
제 생각에는 제대로 작성된 것으로 보이는 첫 번째 사전을 r .csv 파일을 처리하고 있지만 내 예제에서와 같은 방법으로 호출 할 수있는 중첩 된 사전을 만들 수 없습니다. 나는 아래의 산책에서 좀 더 깊이 들어가려고 노력한다. 내 현재 코드 정보, 아마 중복 정보
을 뱉어 그리고 내 현재 코드가 나는 즉시 중첩 사전에 그것을 형성하기 위해 시도 이후 혼란의 비트,하지만 어떻게 여기
입니다 이 시점에서 .csv 파일을 열고 읽음으로써 행을 ";"로 나눕니다. 이름을 키로 호출 할 수있는 각 행의 사전을 만듭니다. 그러나 현재의 장애물은 하나의 키 (이름)로만 호출 할 수 있으며 전체 행을 사전이나 그 부분을 나타내는 것으로 반환합니다. 그래서 같이 : 나는 이름 키 후 다른 키를 추가하려고하면
>>> dict = function("file.csv")
>>> dict['Brad']
'T2Y;Brad;0001\n'
그리고,이 코드는 오류 코드 중지 :
언급 한 바와 같이TypeError: list indices must be integers or slices, not str
당신이 그렇게 한 우리는 당신이 더 나은 도움을 수있는 몇 가지 코드를 제공 할 수 있습니까? – MooingRawr
'function [name] [code]'는'function'이라는 사전의 사전에있는 값에 접근하는 데 사용할 수 있습니다.하지만 확실히 함수 호출은 아닙니다. 파이썬에서 함수 호출은'func (name, code)'와 같이 괄호를 사용합니다. –
당신이 원하는 것이 분명하지 않습니다. 'function [ 'T11'] [ '3957']'에 대한 사전 항목에 대해 어떤 가치가 있습니까? – holdenweb