2
respostas

Diferença entre metodos antes e depois da String

palavra = 'abcde'

tamanho = len(palavra)

resultado = palavra.find('a')

Por exemplo em java usaos palavra.lenght() ou palavra.find("")

Aqui tem algumas coisas são diferentes. por exemplo len(palavra)

recebe a palavra como parametro.

len é um objeto ?

String é java é

Percebi. O problema é que no pycharm quando tenho um string e coloco ponto a frente e procuro o metodo. A IDE devia dar todos os metodos para strings como da o netbeans para o java. tenho de saber isso decor.

palavra.length() - java aqui no python tem de ser len(palavra)

Isso faz me confusão

2 respostas

Olá, Bruno. Não entendi. Qual seria sua dúvida? Se faz diferença entre chamar os métodos antes ou depois de definir a variável palavra?

Se for isso, caso você faça algo como:

tamanho = len(palavra)

resultado = palavra.find('b')

palavra = 'abcde'

O console retornará um erro

Traceback (most recent call last):
  File "rascunho.py", line 1, in <module>
    tamanho = len(palavra)
NameError: name 'palavra' is not defined

O Python lê as linhas do código na ordem. Se na primeira linha você quer o len de palavra mas ainda não definiu quem é palavra o Python não entenderá e lançará o erro acima. Você precisa declarar a variável primeiro.

A dúvida é essa? Se não for, explica melhor aí pra gente entender.

Oi Bruno tudo bem ?

O len vai nos dizer a quantidade de caracter que existem em uma string, e ela espera um parâmetro. Por isso a variável palavra aparece "depois", por que ela é o parâmetro.

O .find() precisa de uma referência para saber de onde ele vai procurar a primeira ocorrência da string. No nosso caso, essa referência é a variável palavra, por isso aparece "antes".

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software