Revisão de 20h11min de 21 de dezembro de 2021 por Tiago (discussão | contribs)

Medidor de extensão de linhas

De Cliomatica - Digital History
Tempo estimado de leitura deste artigo 23 minutos - por Tiago Gil


Linguagens de programação

Página inicial de Linguagens de programação


Exemplos de uso de programação em História (casos interessantes desde os anos 1950 até agora)

Linguagens e software (algumas noções introdutórias sobre as linguagens e seus programas)

Lista de códigos (listas de códigos prontos e aproveitáveis para diversas pesquisas)

Portais de aprendizado (lista comentada de sites e ferramentas de aprendizado)

Comecemos com este belo trecho escrito por Marc Bloch:

É bom, a meu ver, é indispensável que o historiador possua ao menos um verniz de todas as principais técnicas de seu ofício. Mesmo apenas a fim de saber avaliar, previamente, a força da ferramenta e as dificuldades de seu manejo. A lista das “disciplinas auxiliares” cujo ensino propomos a nossos iniciantes é demasiado restrita. Por qual absurdo paralogismo, deixamos que homens que, boa parte do tempo, só conseguirão atingir os objetos de seus estudos através das palavras ignorem, entre outras lacunas, as aquisições fundamentais da linguística? No entanto, por maior que seja a variedade de conhecimentos que se queira proporcionar aos pesquisadores mais bem armados, elas encontrarão sempre, e geralmente muito rápido, seus limites. Nenhum remédio então senão substituir a multiplicidade de competências em um mesmo homem por uma aliança de técnicas praticadas por eruditos diferentes, mas [todas] voltadas para a elucidação de um tema único. Esse método supõe o consentimento no trabalho por equipes. Exige também a definição prévia, por comum acordo, de alguns grandes problemas predominantes. São êxitos de que nos encontramos ainda bastante distantes. Eles determinam porém, numa larga medida — não duvidemos —, o futuro de nossa ciência.


textoDeMarcBloch = "É bom, a meu ver, é indispensável que o historiador possua ao menos um verniz de todas as principais técnicas de seu ofício. Mesmo apenas a fim de saber avaliar, previamente, a força da ferramenta e as dificuldades de seu manejo. A lista das “disciplinas auxiliares” cujo ensino propomos a nossos iniciantes é demasiado restrita. Por qual absurdo paralogismo, deixamos que homens que, boa parte do tempo, só conseguirão atingir os objetos de seus estudos através das palavras ignorem, entre outras lacunas, as aquisições fundamentais da linguística? No entanto, por maior que seja a variedade de conhecimentos que se queira proporcionar aos pesquisadores mais bem armados, elas encontrarão sempre, e geralmente muito rápido, seus limites. Nenhum remédio então senão substituir a multiplicidade de competências em um mesmo homem por uma aliança de técnicas praticadas por eruditos diferentes, mas [todas] voltadas para a elucidação de um tema único. Esse método supõe o consentimento no trabalho por equipes. Exige também a definição prévia, por comum acordo, de alguns grandes problemas predominantes. São êxitos de que nos encontramos ainda bastante distantes. Eles determinam porém, numa larga medida — não duvidemos —, o futuro de nossa ciência."

linhas = textoDeMarcBloch.split(".") # cria uma variável que divide (split) o texto a partir dos pontos finais (".")

# o script abaixo usa o ''for'', um tipo de procedimento em série, para processar cada linha já dividida do texto original, no caso quer dizer: "para cada item na variável "linhas", faça o que está abaixo

for item in linhas: # para cada linha faça o que está abaixo
    palavras = item.split(" ") # crie a variável "palavras", quebrando a linha por espaços (" ")
    print(len(palavras)) # imprima o total de palavras por frase, ''len'' vem de lenght, tamanho em inglês, e é usado para medir as coisas em python
‎

Agora vem a pergunta. Porquê se usa "item" e não as linhas? Porque ele processa uma linha por vez e "linhas" é o conjunto de todas as linhas. Ele pega uma por vez e processa o que queremos. Ele conta as palavras de cada linha, independente da diferença. Não é obrigatório usar item, poderia ser qualquer outra palavra, mas é bem fácil de lembrar e muito usado pelos programadores.


O resultado será em quantidade de palavras e terá essa configuração:

RESULTADO ESPERADO

23

19

15

61

33

10

14

10

16

1

Process finished with exit code 0


O "1" final é um resíduo.

Contudo, talvez seja mais interessante poder contrastar o resultado com a linha. Vejamos:


textoDeMarcBloch = "É bom, a meu ver, é indispensável que o historiador possua ao menos um verniz de todas as principais técnicas de seu ofício. Mesmo apenas a fim de saber avaliar, previamente, a força da ferramenta e as dificuldades de seu manejo. A lista das “disciplinas auxiliares” cujo ensino propomos a nossos iniciantes é demasiado restrita. Por qual absurdo paralogismo, deixamos que homens que, boa parte do tempo, só conseguirão atingir os objetos de seus estudos através das palavras ignorem, entre outras lacunas, as aquisições fundamentais da linguística? No entanto, por maior que seja a variedade de conhecimentos que se queira proporcionar aos pesquisadores mais bem armados, elas encontrarão sempre, e geralmente muito rápido, seus limites. Nenhum remédio então senão substituir a multiplicidade de competências em um mesmo homem por uma aliança de técnicas praticadas por eruditos diferentes, mas [todas] voltadas para a elucidação de um tema único. Esse método supõe o consentimento no trabalho por equipes. Exige também a definição prévia, por comum acordo, de alguns grandes problemas predominantes. São êxitos de que nos encontramos ainda bastante distantes. Eles determinam porém, numa larga medida — não duvidemos —, o futuro de nossa ciência."

linhas = textoDeMarcBloch.split(".") # cria uma variável que divide (split) o texto a partir dos pontos finais (".")

# o script abaixo usa o ''for'', um tipo de procedimento em série, para processar cada linha já dividida do texto original, no caso quer dizer: "para cada item na variável "linhas", faça o que está abaixo

for item in linhas: # para cada linha faça o que está abaixo
    palavras = item.split(" ") # crie a variável "palavras", quebrando a linha por espaços (" ")
    print(str(len(palavras))+ " - " + item) # AGORA COMPLICOU. Vamos por partes: ''str' (string, ou seja, texto) é usado para converter em texto o resultado da contagem de palavras, que originalmente era em formato de número. Isso é necessário para juntar (concatenar) com o tracinho "-" que separa o total de palavras das frases. Tanto o tracinho quanto as frases propriamente ditas são texto (string) e não podem ser concatenadas com números. É preciso sempre convertar. Para concatenar, basta usar o sinal de " + ". Se fossem números, ele literalmente somaria. Agora vem a pergunta. Porquê se usa "item" e não as linhas? Porque ele processa uma linha por vez e "linhas" é o conjunto de todas as linhas. Ele pega uma por vez e processa o que queremos. Ele conta as palavras de cada linha, independente da diferença. Não é obrigatório usar item, poderia ser qualquer outra palavra, mas é bem fácil de lembrar e muito usado pelos programadores.
‎

O resultado é bem evidente

RESULTADO ESPERADO

23 - É bom, a meu ver, é indispensável que o historiador possua ao menos um verniz de todas as principais técnicas de seu ofício

19 - Mesmo apenas a fim de saber avaliar, previamente, a força da ferramenta e as dificuldades de seu manejo

15 - A lista das “disciplinas auxiliares” cujo ensino propomos a nossos iniciantes é demasiado restrita

61 - Por qual absurdo paralogismo, deixamos que homens que, boa parte do tempo, só conseguirão atingir os objetos de seus estudos através das palavras ignorem, entre outras lacunas, as aquisições fundamentais da linguística? No entanto, por maior que seja a variedade de conhecimentos que se queira proporcionar aos pesquisadores mais bem armados, elas encontrarão sempre, e geralmente muito rápido, seus limites

33 - Nenhum remédio então senão substituir a multiplicidade de competências em um mesmo homem por uma aliança de técnicas praticadas por eruditos diferentes, mas [todas] voltadas para a elucidação de um tema único

10 - Esse método supõe o consentimento no trabalho por equipes

14 - Exige também a definição prévia, por comum acordo, de alguns grandes problemas predominantes

10 - São êxitos de que nos encontramos ainda bastante distantes

16 - Eles determinam porém, numa larga medida — não duvidemos —, o futuro de nossa ciência

1 -

Process finished with exit code 0

O ideal teria sido, desde o início, remover todas as vírgulas. Para isso bastaria usar o comando "replace", criando uma variável logo no início

textoDeMarcBlochSemVirgulas = textoDeMarcBloch.replace(",", "")

linhas = textoDeMarcBlochSemVirgulas.split(".")

‎


RESULTADO ESPERADO

23 - É bom a meu ver é indispensável que o historiador possua ao menos um verniz de todas as principais técnicas de seu ofício

19 - Mesmo apenas a fim de saber avaliar previamente a força da ferramenta e as dificuldades de seu manejo

15 - A lista das “disciplinas auxiliares” cujo ensino propomos a nossos iniciantes é demasiado restrita

61 - Por qual absurdo paralogismo deixamos que homens que boa parte do tempo só conseguirão atingir os objetos de seus estudos através das palavras ignorem entre outras lacunas as aquisições fundamentais da linguística? No entanto por maior que seja a variedade de conhecimentos que se queira proporcionar aos pesquisadores mais bem armados elas encontrarão sempre e geralmente muito rápido seus limites

33 - Nenhum remédio então senão substituir a multiplicidade de competências em um mesmo homem por uma aliança de técnicas praticadas por eruditos diferentes mas [todas] voltadas para a elucidação de um tema único

10 - Esse método supõe o consentimento no trabalho por equipes

14 - Exige também a definição prévia por comum acordo de alguns grandes problemas predominantes

10 - São êxitos de que nos encontramos ainda bastante distantes 16 - Eles determinam porém numa larga medida — não duvidemos — o futuro de nossa ciência 1 -

Process finished with exit code 0

Será que Marc Bloch abusava de linhas longas? Será que alternava com estilo? Fica ao leitor a avaliação, lembrando que é apenas um exemplo sem qualquer pretensão de exatidão (o que tampouco seria possível ou desejável)


Referências



Citação deste verbete
Como citar: GIL, Tiago. "Medidor de extensão de linhas". In: CLIOMATICA - Portal de História Digital e Pesquisa. Disponível em: http://lhs.unb.br/cliomatica/index.php/Medidor_de_extens%C3%A3o_de_linhas. Data de acesso: 1 de junho de 2024.






Informar erro nesta página