#
# este código mostra que é possível
# formar dicionário com chaves que não são escalares,
# ou seja, chaves que são multidimensionais
#
#
# neste código, as chaves são tuplas e os valores também são tuplas
#
#
# a sintaxe de declaração das chaves e dos valores
# deve ser cuidadosamente escolhida:
# não deve ser escrito o caractere vírgula na declaração de chave e
# não deve ser escrito o caractere vírgula na declaração de valor
#
chave_1_2 = 1 , 2
print ( f' chave_1_2 = { chave_1_2 } ' )
chave_3_4 = 3 , 4
print ( f' chave_3_4 = { chave_3_4 } ' )
a = 'a'
b = 'b'
valor_a_b = a , b
print ( f' valor_a_b = { valor_a_b } ')
c = 'c'
d = 'd'
valor_c_d = c , d
print ( f' valor_c_d = { valor_c_d } ' )
#
# iniciar dicionario
#
dicionario = {}
#
# sintaxe correta
#
dicionario = { chave_1_2 : valor_a_b , chave_3_4 : valor_c_d }
#
# sintaxe incorreta - exemplo 01
#
# valores declarados com escrita de caractere vírgula
#
# dicionario = { chave_1_2 : a , b , chave_3_4 : c , d }
#
# sintaxe incorreta - exemplo 02
#
# chaves declaradas com escrita de caractere vírgula
#
# dicionario = { 1 , 2 : valor_a_b , 3 , 4 : valor_c_d }
#
# sintaxe incorreta - exemplo 03
#
# chaves declaradas com escrita de caractere vírgula e
# valores declarados com escrita de caractere vírgula
#
# dicionario = { 1 , 2 : a , b , 3 , 4 : c , d }
#
# sintaxe incorreta - exemplo 04
#
# uma chave declarada com escrita de caractere vírgula
# e
# um valor declarado sem escrita de caracteres vírgula
#
# uma chave declarada sem escrita de caractere vírgula
# e
# um valor declarado com escrita de caractere vírgula
#
# dicionario = { 1 , 2 : valor_a_b , chave_3_4 : c , d }
#
# ecoar o dicionario com chave multidimensional
#
print ( f' dicionario = { dicionario } ')
#
# testar indexação do dicionario com chave multidimensional
#
print ( f' dicionario [ ( 1 , 2 ) ] = { dicionario [ ( 1 , 2 ) ] } ')
print ( f' dicionario [ ( 3 , 4 ) ] = { dicionario [ ( 3 , 4 ) ] } ')
A escrita realizada pelo código é:
chave_1_2 = (1, 2)
chave_3_4 = (3, 4)
valor_a_b = ('a', 'b')
valor_c_d = ('c', 'd')
dicionario = {(1, 2): ('a', 'b'), (3, 4): ('c', 'd')}