2012-04-15 6 views
1

한 번에 여러 사전을 만든 다음 사전을 인쇄하는 python 스크립트를 작성하려고하지만 변수를 문자열로 변환하는 방법을 모르겠습니다.파이썬 : 문자열을 변수로 사용 하시겠습니까?

number = 0 

while (number < 10): 
    number = number + 1 
    dictionarynumber = ("D"+str(number)) # creates the dictionarys name(D1,D2,D3,D4,D5,D6,D7,D8,D9,D10) 
    var(dictionarynumber) = {"Fruit":"Apple","Book":"Oliver Twist","Building":"White House"} #Of course var() doesn't work but I placed it here to get my point across 
    print(dictionarynumber) 

후 답변 :

나는 사전에 대한 아이디어를 좋아하고 불필요한 "D"를 복용하는 것은 의미가 있습니다. 너희들이 어떻게 생각하니?

dict = {} 
n = 0 

while (n < 10): 
    n = n + 1 
    d = n 
    d = {"Key":"Information"} 
    dict[n] = d 

print(dict) 


# Output = 
#   {1: {'Key': 'Information'}, 
#   2: {'Key': 'Information'}, 
#   3: {'Key': 'Information'}, 
#   4: {'Key': 'Information'}, 
#   5: {'Key': 'Information'}, 
#   6: {'Key': 'Information'}, 
#   7: {'Key': 'Information'}, 
#   8: {'Key': 'Information'}, 
#   9: {'Key': 'Information'}, 
#   10: {'Key': 'Information'}} 
+5

목록 (인덱서에 "D"를 표시하지 않음) 또는 다른 사전을 사용하십시오. 나중에 고맙다. –

+0

또는 순차 숫자가 아닌 임의로 이름을 지정할 수 있도록하려면 사전 사전을 사용하십시오. 계산 된 키는 여전히 컴퓨터 이름보다 낫습니다. – agf

+1

당신의'number' 루프는 대신 다음과 같아야합니다 :'for range of number (1, 11) : –

답변

4

각 사전에 이름을 지정하려면 사전에 입력하십시오.

dicts = {} 
# dict_list = [] 
for i in xrange(10): 
    dictionary_key = ('d{0}'.format(i)) 
    dict_item = {"Fruit":"Apple","Book":"Oliver Twist","Building":"White House"} 
    dicts[dictionary_key] = dict_item 
    # dict_list.append(dict_item) 

사전에 이름을 사용하지 않으려는 경우 목록에 입력하십시오.

+0

공백 사전, 나는 당신이 그것을 할 수 있는지 몰랐다. 좋은 생각 같아. – RandomPhobia

+0

문장 개폐를위한 +1 –

0

혼합 데이터 형식을 만들려고하고있는 것 같지만 원하는 구조가 무엇인지 잘 모르겠습니다. 그래서 나는 2 가지 대답을주고 올바른 것이 희망입니다. 당신이 사전의 무리를 만들고 인쇄하려는 경우

첫째, 당신은 이런 식으로 할 것 :

diclist = [{"Fruit":"Apple"},{"Book":"Oliver Twist"},{"Building":"White House"}] 
print(diclist[1]) 

둘째, 당신은 당신이 사전을 만드는 것을 목표로 될 수있다 준 예에 의해 진행 목록. 예를 들어

listDic = {'Fruit':['Apples', 'Bannanas', 'Durian'], 'Book':['Oliver Twist','Flashman', 'Catch 22']} 
print (listDic) 

당신이 이런 식으로 액세스 할 수 있습니다

print(listDic['Fruit']) 

초래 [ '사과', 'Bannanas', '두리안']

및이 인쇄 (listDic [ 'Fruit'] [1]) 는 res 내가 대답을 놓친 경우 ULT는

Bannanas

에 당신이 원하거나 자세한 내용은 단지 코멘트를 삭제합니다.

관련 문제