Stack Overflow em Português Asked by Shinforinpola on November 27, 2020
Estou manipulando strings e me deparei com essa questão. Eu achava que a semântica das formas de usar era a mesma, mas vi que não e isso me deixou confuso.
No caso achava que com o uso de split(" ")
todos os espaço da string original seriam removidos e eu teria algo como:
[’07’, ’10’, ’11’, ’20’, ’30’, ’44’, ’34n’]
Mas o que eu obtive na saída foi:
palavra = " 07 10 11 20 30 44 34n"
splt = palavra.split(" ")
print(splt)
retorno:
[”, ”, ”, ”, ”, ’07’, ’10’, ’11’, ’20’, ’30’, ’44’, ’34n’]
E com o uso de split()
saiu bem mais próximo do que eu esperava.
palavra = " 07 10 11 20 30 44 34n"
splt = palavra.split()
print(splt)
retorno:
[’07’, ’10’, ’11’, ’20’, ’30’, ’44’, ’34’]
Se você der o comando abaixo
print(help(palavra.split))
verá o resultado abaixo
Help on built-in function split:
split(sep=None, maxsplit=-1) method of builtins.str instance
Return a list of the words in the string, using sep as the delimiter string.
sep
The delimiter according which to split the string.
None (the default value) means split according to any whitespace,
and discard empty strings from the result.
maxsplit
Maximum number of splits to do.
-1 (the default value) means no limit.
Veja então que " "
(espaço) tem o resultado diferente de None
None, ou seja o uso de .split()
descarta strings vazias.
Espero ter ajudado
Correct answer by Paulo Marques on November 27, 2020
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP