Python. Wyliczenie ilości znaków, słów oraz linii z wczytanego pliku

05.2023 | pandas | Python | ftekst()

Wyliczenie ilości linii, słów i znaków z podanego pliku tekstowego

Niniejszy tip przedstawia sposób na wyliczenie ilości linii, słów i znaków w podanym pliku tekstowym.

Zakładamy, że dane są w pliku tekstowym, a plik ten jest podany jako argument przy wywołaniu naszego skryptu.

Wykorzystane metody / funkcje:

  • sys.arg[1] => pobranie argumentu, czyli nazwy pliku
  • open('file_name', 'r') => otwarcie pliku do odczytu
  • f.read() => wczytanie zawartości pliku
  • len(txt) => zwraca ilość elementów w podanym obiekcie
  • txt.split() => rozbija blok tekstowy na pojedyncze słowa
  • txt.splitlines() => rozbija blok tekstowy na pojedyncze linie

Otwarcie pliku

Uwaga:

  • nasz skrypt nazywamy np. word_calc.py
  • analizowany fragment tekstu zamieszczamy w odrębnym pliku tekstowym np. tekst.txt
  • skrypt wywołujemy z linii komend wpisując: python word_calc.py tekst.txt

Poszczególne fragmenty pliku wyglądają następująco:


# importujemy moduł sys
import sys

# pobieramy nazwę pliku
arg1 = sys.argv[1]

# otwieramy plik
f = open(arg1, "r")
ftekst = f.read()

Pobranie ilości znaków, słów oraz pobranie ilości linii


# definiujemy zmienne
c = 0 # number of chars
w = 0 # number od words
l = 0 # number of lines

# wyliczamy ilość znaków w pliku
for element in ftekst:
    c = c + 1

print("Ilość znaków to: " + str(c))

# wyliczamy ilość słów
w = ftekst.split()
w = len(w)
print("Ilość słów to: " + str(w))

# wyliczamy ilość linii
l = len(ftekst.splitlines())
print("Ilość linii to: " + str(l))

O Mnie

Wspieram firmy w transformacji na model działania oparty o dane. Wdrażam i wyciągam rekomendacje, płynące z danych.

Korzystam z Google Marketing Cloud, Google Cloud Platform, Tableau, Microsoft Power BI oraz Python i R.

Posiadam certyfikat Google Analytics 4 i Tableau Certified Professional, doświadczenie akademickie oraz 20-lat doświadczenia biznesowego.

Jestem Co-Founderem spółek: Hexe Capital SA, Cut2Code, Boostsite, KODA, Insightland.

Zapraszam. Krzysztof Surowiecki

Więcej o mnie Współpraca

Moje certyfikaty