Ir ao conteúdo
  • Cadastre-se
GabrielTeixeira16

Combinador de palavras em python está com erro. como corrigir?

Recommended Posts

Eu to tentando fazer um combinador de palavras, mas fica dando esse erro a toda hora, alguém sabe o por quê e como se conserta?

def alterna_strings(p1,p2):
	palavraFinal=[]
	tamanho= len(p1)+ len(p2)
	contador=0
	while contador <= tamanho:
		palavraFinal.append(p1[contador])
		for letra in p2:
			palavraFinal.append(letra)
		contador +=1
	return palavraFinal

p1=input("digite a primeira palavra:")
p2=input("digite a segunda palavra:")	
print(alterna_strings(p1,p2))

e o erro que dá é esse:

IndexError: string index out of range

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é que o contador está indo até o tamanho total das duas variáveis.

Se, por exemplo, p1 é "teste" (5 caracteres) e p2 é "codigo" (6 caracteres), o tamanho fica igual a 11. O erro ocorre na hora em que o contador = 5. A posição 5 em p1 não existe (p1 vai de 0 a 4).

 

Pergunta: o que você está tentando fazer? Mostre alguns exemplos para p1 e p2 e o resultado esperado. 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×