I need to use an array that’s in one code in another!

Asked

Viewed 78 times

1

I have a project with the following files:

old woman py. print py.

need to use a 3x3 matrix that is in play.py in the print script.py

print py.

#função de impressão
def impressao():
    print("                   Coluna 1 Coluna 2 Coluna 3")
    print("          Linha 1    ",matriz[0][0],"     ", matriz[0][1],"       ", matriz[0][2])
    print()
    print("          Linha 2    ",matriz[1][0],"     ", matriz[1][1],"       ", matriz[1][2])
    print()
    print("          Linha 3    ",matriz[2][0],"     ", matriz[2][1],"       ", matriz[2][2])
    print()

py.

#inicialização 
import time
import random
matriz = [[0,0,0],[0,0,0],[0,0,0]]
print("\n"*130)

#função da jogada do usuario
def jogadauser():
    controle = 0
    while controle != 1:
        impressao()
        print("Digite a sua jogada! ")
        linha = int ( input("Linha: ") )
        coluna = int ( input("Coluna: ") )
        linha = linha - 1
        coluna = coluna - 1
        if matriz[linha][coluna] == 0:
            controle = 1
        print("\n"*130)
    return linha, coluna

#função da jogada do computador
def jogadapc():
    impressao()
    print("O computador está pensando!")
    time.sleep(2)
    controle = 0
    while controle != 1:
        linha = random.randint(0,2)
        coluna = random.randint(0,2)
        if matriz[linha][coluna] == 0:
            controle = 1
        print("\n"*130)
    return linha, coluna

#função de comparação
def comparar():
    if (matriz[0][0] == "H" and matriz[0][1] == "H" and  matriz[0][2] == "H"):
        return "humano"
    elif (matriz[1][0] == "H" and matriz[1][1] == "H" and  matriz[1][2] == "H"):
        return "humano"
    elif (matriz[2][0] == "H" and matriz[2][1] == "H" and  matriz[2][2] == "H"):
        return "humano"
    elif (matriz[0][0] == "H" and matriz[1][0] == "H" and  matriz[2][0] == "H"):
        return "humano"
    elif (matriz[0][1] == "H" and matriz[1][1] == "H" and  matriz[2][1] == "H"):
        return "humano"
    elif (matriz[0][2] == "H" and matriz[1][2] == "H" and  matriz[2][2] == "H"):
        return "humano"
    elif (matriz[0][0] == "H" and matriz[1][1] == "H" and  matriz[2][2] == "H"):
        return "humano"
    elif (matriz[0][2] == "H" and matriz[1][1] == "H" and  matriz[2][0] == "H"):
        return "humano"

    if (matriz[0][0] == "C" and matriz[0][1] == "C" and  matriz[0][2] == "C"):
        return "computador"
    elif (matriz[1][0] == "C" and matriz[1][1] == "C" and  matriz[1][2] == "C"):
        return "computador"
    elif (matriz[2][0] == "C" and matriz[2][1] == "C" and  matriz[2][2] == "C"):
        return "computador"
    elif (matriz[0][0] == "C" and matriz[1][0] == "C" and  matriz[2][0] == "C"):
        return "computador"
    elif (matriz[0][1] == "C" and matriz[1][1] == "C" and  matriz[2][1] == "C"):
        return "computador"
    elif (matriz[0][2] == "C" and matriz[1][2] == "C" and  matriz[2][2] == "C"):
        return "computador"
    elif (matriz[0][0] == "C" and matriz[1][1] == "C" and  matriz[2][2] == "C"):
        return "computador"
    elif (matriz[0][2] == "C" and matriz[1][1] == "C" and  matriz[2][0] == "C"):
        return "computador"


#Jogo
jogadas = 0 
while jogadas < 9:
    linha = 0
    coluna = 0
    if jogadas%2 == 0:
        linha, coluna = jogadauser()
        matriz[linha][coluna] = "H"
    else:
        linha, coluna = jogadapc()
        matriz[linha][coluna] = "C"
    if comparar() == "humano":
        impressao()
        print("Você ganhou!")
        jogadas = 10
    elif comparar() == "computador":
        impressao()
        print("Você perdeu!")
        jogadas = 10
    jogadas = jogadas + 1
time.sleep(5)
  • Do the import of jogo in impressao. For more details, please [Edit] the question and add the relevant codes to the question.

  • Ready I have put the codes

  • so oh: from jogo import matriz

  • Thanks I’ll try here!

1 answer

4

To import an object from a module, simply use the import or from ... import. In this case, in the file impressao.py, just do:

from jogo import matriz

#função de impressão
def impressao():
    print("                   Coluna 1 Coluna 2 Coluna 3")
    print("          Linha 1    ",matriz[0][0],"     ", matriz[0][1],"       ", matriz[0][2])
    print()
    print("          Linha 2    ",matriz[1][0],"     ", matriz[1][1],"       ", matriz[1][2])
    print()
    print("          Linha 3    ",matriz[2][0],"     ", matriz[2][1],"       ", matriz[2][2])
    print()

If you call the function impressao(), will have the exit:

           Coluna 1 Coluna 2 Coluna 3
  Linha 1     0       0         0

  Linha 2     0       0         0

  Linha 3     0       0         0

See working on Repl.it.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.