2014-12-20 3 views
0

을 제목으로 사용하면 하나의 키에 두 개의 값을 할당하려고합니다. 이 웹 사이트에는 몇 가지 답변이 있지만 파이썬에 대해서는 아주 익숙하지 않은 것으로 알고 있습니다. 그러므로 대답이 왜 대답인지 설명 할 수 있다면 좋을 것입니다. 어쨌든 여기 코드는 당신이 내가 간단한 블랙 잭 게임을 만들려고하고 그래서 나는 마음의 에이스 (안 하나에 모두 1과 11을 할당 할 볼 수 있습니다으로여러 값을 사전 키에 할당 - Python

card = {'1 of hearts': '1', '2 of hearts': '2', 'ace of hearts':'1, 11'} 
print(card['ace of hearts']) 

을 실행하기 위해 노력하고있다 또는 11). 그러나 위의 코드는 '1, 11'을 제공합니다. 어떤 도움을 주시면 감사하겠습니다.

+0

요청하신 내용이 표시되지 않습니까? 당신의 열쇠는 '마음의 에이스'문자열이고, 당신의 가치는 또 다른 문자열 '1, 11'입니다. 그래서 당신이 보는 것은 당신이 얻는 것입니다. int의 목록으로 가치를 부여 할 것을 제안합니다. 카드 = { '마음 1': [1], '마음 2': [2], '마음의 에이스': [1, 11]} –

+0

어떤 종류의 덱이 있니? '카드? – Barmar

+0

좋은 점은 그 점을 깨달았습니다 : P –

답변

4

사전을 사용하면 키를 배열로 만들 수 있습니다.

card = {'1 of hearts': '1', '2 of hearts': '2', 'ace of hearts':["1", "11"]} 

그런 다음 사용하여 첫 번째 변수에 액세스 할 수 있습니다

print(card['ace of hearts'][1]) 

당신의 배열을 저장하려면 :

print(card['ace of hearts'][0]) 

당신은 다음을 사용하여 두 번째 변수에 액세스 할 수 있습니다 키를 정수로 사용하려면 다음을 사용해야합니다.

card = {'1 of hearts': 1, '2 of hearts': 2, 'ace of hearts':[1, 11]} 
+0

@dawg는 문자열 대신에'int' 값으로 카드 값을 저장하는 것이 좋습니다. – Anentropic

1

는 문자 할당에 세트 또는 목록을 사용하여

card = {'1 of hearts': [1], '2 of hearts': [2], 'ace of hearts':[1, 11]} 

당신은 아마 또한 문자열 대 정수를 사용하려면, 추가 int를 사용할 수 있기 때문이다.

0

card['ace of hearts']을 인쇄하면 단일 문자열이 생깁니다.

>>> print(card['ace of hearts'].split(', ')) 
['1', '11'] 

을하거나 처음부터 목록을 사용하기 위해, 다른 사람이 말했듯이, 더 나은 : 그것을 끊고 목록에 넣어하려면 쉼표 (,)로 요소를 분리 할 수있다.

관련 문제