Alguém me explica o poder desse diabo de .strip( ) no Python!!

Algoritmo

Python

16/04/2020

Olá, pessoal!

Sou iniciante no mundo da programação e estou aprendendo o Python. Fiz esse pequeno exercício onde coloco nome, idade e sexo de 4 pessoas, retorno a media de idade do grupo, nome e idade do homem mais velho e quantas mulheres têm menos de 20 anos. Sei que o strip remove espaços mas...
Ocorre que quando eu declaro a variável ''nome = str(input('Digite o nome: '))'' sem o .strip, quando uma mulher é a mais velha, ele me retorna como se fosse o homem mais velho, mas quando declaro ''nome = str(input('Digite o nome: ')).strip( )'' ele passa a considerar o homem. O que esse .strip( ) fez de especial?

masc_total = 0
fem_total = 0
homem_velho = 0
nomevelho = ''
totmulher20 = 0
soma_idade = 0
mediaidade = 0

for p in range(1, 5):
nome = str(input('Digite o nome: '))
idade = int(input('Digite a idade: '))
sexo = str(input('Digite o sexo: [M] Masculino | [F] Feminino: ')).strip()
soma_idade += idade
mediaidade = soma_idade / p
if p == 1 and sexo in 'Mm':
homem_velho = idade
nomevelho = nome
if idade > homem_velho:
homem_velho = idade
nomevelho = nome
if sexo in 'Mm':
masc_total += 1
if sexo in 'Ff':
fem_total += 1
if sexo in 'Ff' and idade < 20:
totmulher20 += 1
print('A media de idade do grupo é de {} anos'.format(mediaidade))
print('O nome do homem mais velho é {} e ele tem {} anos'.format(nomevelho, homem_velho))
print('{} mulheres possuem menos de 20 anos'.format(totmulher20))
print(' Ao todo foram {} pessoas, sendo {} homens e {} mulheres'.format(p, masc_total, fem_total))
William Costa

William Costa

Curtidas 0

Melhor post

Divino Rodrigues

Divino Rodrigues

16/04/2020

Boa tarde. Cara a função do .strip( ) é basicamente retirar espaços em branco no começo e no fim da string.

Ex:
"  sobrando espaços   ".strip()              # "sobrando espaços"
GOSTEI 1

Mais Respostas

William Costa

William Costa

16/04/2020

Boa tarde. Cara a função do .strip( ) é basicamente retirar espaços em branco no começo e no fim da string.


Ex:
"  sobrando espaços   ".strip()              # "sobrando espaços"


Cara, consegui arrumar. Não era o strip, embora estranhamente estava influenciando. Olha essa parte:

If idade > homem_velho
nomevelho = nome

Isso faz com que leia até mesmo se o mais velho for mulher.

Se eu fizer

If idade > homem_velho and sexo == 'Mm'
nomevelho = nome

Da certo mesmo se a pessoa mais velha for uma mulher.
GOSTEI 0
POSTAR