Ir ao conteúdo
  • Cadastre-se

Python Exercício de Python 3


Posts recomendados

Estou começando no Python e queria saber o motivo de não dar certo na resolução #1 e dar certo na resolução #2 sendo que parece ser a mesma coisa.

 

Obs: Note que a diferença está na ultima linha.


 

'''

Exercício Python : Crie um programa que leia o nome completo de uma pessoa e mostre:

- O nome com todas as letras maiúsculas e minúsculas.

- Quantas letras ao todo (sem considerar espaços).

- Quantas letras tem o primeiro nome. 

'''

# Resolução 1:

nome_completo = str(input('Digite seu nome completo: ')).strip()


print('\nLetras maiúsculas: {}\nLetras minúsculas: {}'.format(nome_completo.upper(),nome_completo.lower()))

print('Seu nome tem {} letras ao todo'.format(len(nome_completo) - nome_completo.count(' ')))

print('O primeiro nome é {} e tem {} letras'.format(nome_completo.split([0]),len(nome_completo.split([0]))))


# Resolução 2:

nome_completo = str(input('Digite seu nome completo: ')).strip()

lista = nome_completo.split()


print('\nLetras maiúsculas: {}\nLetras minúsculas: {}'.format(nome_completo.upper(),nome_completo.lower()))

print('Seu nome tem {} letras ao todo'.format(len(nome_completo) - nome_completo.count(' ')))

print('O primeiro nome é {} e tem {} letras'.format(lista[0],len(lista[0])))

 

Link para o comentário
Compartilhar em outros sites

@Kamuri Olá. Já que estou aqui para aprender ficou uma certa dúvida com relação ao código do @Viking1 e a resposta dada

Do modo como está feito o exercício 2 entendo que não está sendo usado listas, e sim string

Veja esse pequeno exemplo:

nome_completo = str(input('Digite seu nome completo: ')).strip()
lista = [] # crio uma lista 
lista.append(nome_completo.upper())
nome_em_maiusculo = nome_completo.upper()
print('Nome completo em maiúsculo: {}'.format(lista[0])) # aqui é lista
print('Nome completo em maiúsculo: {}'.format(nome_em_maiusculo)) # aqui é string

Veja nesse outro pequeno exemplo onde trabalho com strings:

>>> s = 'hello'
>>> lista = s.upper()
>>> lista
'HELLO'
>>> type(lista)
<class 'str'>

E no caso de lista:

>>> l = []
>>> s = 'hello'
>>> l.append(s.upper())
>>> l
['HELLO']
>>> type(l)
<class 'list'>

Entendeu o ponto a que me refiro?

 

:oops:Atualizando:

>>> s = 'hello baby'
>>> result = s.split()
>>> result[0]
'hello'
>>> type(result)
<class 'list'>

@Kamuri De fato, a resposta que você deu está correta 😊

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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 comunidades 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

×
×
  • Criar novo...