Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvida: Variáveis setada sem atribuição


Marcelo Damasceno

Pergunta

Olá Pessoal,

Estou com a seguinte dúvida em relação ao comportamento de uma variável em uma função.

A função é:

def soma(x,y):
    if(len(x)==len(y)):        
        soma=x
        for i in range(0,len(x)):
            soma[i]=x[i]+y[i]
        return soma
    else:
        print("O número de elementos é diferente")
        return 0
a=[1,2,3]
b=[4,5,6]
soma1=soma(a,B)
print("1: ",soma1)
print(a)
soma2=soma(a,[8,8,8])
print(soma2)
A saída está sendo:
1:[5,7,9]
[5,7,9]
[13,15,17]

O problema é o seguinte: Ele está atribuindo a variável a o valor retornado pela função soma(a,B). Lembre-se que não estou usando a variável a dentro da função, estou usando x. Nem estou atribuindo a a o valor soma(a,B) em nenhum momento.

ALguém poderia me explicar o porque disto estar acontecendo.

Se ajudar estou usando o Python 3.2 com Idle no Ubuntu.

Obrigado.

Editado por Marcelo Damasceno
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

def soma(x,y):

if(len(x)==len(y)):

soma=x

for i in range(0,len(x)):

soma=x+y

return soma

else:

print("O número de elementos é diferente")

return 0

a=[1,2,3]

b=[4,5,6]

soma1=soma(a,B)

print("1: ",soma1)

print(a)

soma2=soma(a,[8,8,8])

print(soma2)

o motivo esta bem claro ... experimente fazer um teste de mesa ( voce aprende a fazer isso na aula de informatica )

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...