Python - szukanie tekstu

Potrzebujesz pomocy z C, C++, perl, python, itp.
zbyszek007
Posty: 3
Rejestracja: 09 listopada 2022, 13:48

Python - szukanie tekstu

Post autor: zbyszek007 »

Witam, jestem początkujący i mam problem z...
Mam plik txt w którym zapisują się dane linijka po linijce.
Potrzebował bym teraz kod gdzie użytkownik po wpisaniu np: Apple
przeszukuje on plik txt i wyrzuca mi czy znalazł taki wyraz czy nie.

Z góry dziękuje za pomoc.
Awatar użytkownika
dedito
Moderator
Posty: 3560
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Python - szukanie tekstu

Post autor: dedito »

Nie rozwiązujemy zadań szkolnych, zwłaszcza przy zerowym wkładzie własnym.
zbyszek007
Posty: 3
Rejestracja: 09 listopada 2022, 13:48

Re: Python - szukanie tekstu

Post autor: zbyszek007 »

Jestem aktualnie na studiach z informatki.
Zawsze się interesowałem programowaniem jednak nigdy na poważeni. Teraz przyszedł czas aby się za to wziąć bardziej.
Potrafię pisać proste kody jednak chciałbym poznawać nowe rzeczy i szkoda, że na takim forum ludzie mają problem aby podpowiedzieć bądź pokazać jak zacząć.
Zatem proszę zmienić nazwę na "programowanie dla wprawionych" skoro moderator ma problem podpowiedzieć początkującej osobie...
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2324
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Re: Python - szukanie tekstu

Post autor: LordRuthwen »

Jak zacząć: wykorzystaj bibliotekę re, jak z niej korzystać znajdziesz w dokumentacji na stronie jej projektu.
Korzystanie z dokumentacji bibliotek to podstawa podstaw, bez tego nie zrozumiesz jak działa to co przeklejasz :)
Awatar użytkownika
dedito
Moderator
Posty: 3560
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Python - szukanie tekstu

Post autor: dedito »

Skoro potrafisz pisać proste kody, to przedstaw chociaż ten prosty.

P.S.
Ja nie mam problemu z pomocą, gdybym miał z tym problem nie siedziałbym na tym forum, jednak należy odróżniać pomoc od wyręczania.
Wpisanie w wyszukiwarkę frazy "python find text in file" i zastosowanie znalezionych rad nie stanowi chyba problemu dla dzisiejszych studentów? (pytanie retoryczne)
Podpowiem, że są nawet onlinowe środowiska pythona, aby sobie potestować kod bez potrzeby instalowania pythona na swoim komputerze.
Swoją drogą zastanawiające co też uczą na studiach z informatyki, skoro student nawet nie wie jak zacząć.
zbyszek007
Posty: 3
Rejestracja: 09 listopada 2022, 13:48

Re: Python - szukanie tekstu

Post autor: zbyszek007 »

Kod wygląda następująco:

Kod: Zaznacz cały

dana1 = input ("Wpisz dane1: ")
dana2 = input ("Wpisz dane2: ")

file = open("Dane1.txt","a")

file.write(dana1 + "\n")
file.write(dana2 + "\n")


file.close()

file = open("Dane1.txt")

for plik in file:
    print(plik.count(Apple))
Na konsoli dało mi wartość 1 wiec znalazł taki tekst, ale chciałbym aby mi ktoś powiedział jak to zdefiniować jako if
Czyli jeżeli to słowo jest to... a jeżeli go nie ma to...
Będę wdzięczny jeżeli ktoś mógłby mi napisać komendę do tego lub linka do poradnika jak korzystać z biblioteki re
Ostatnio zmieniony 09 listopada 2022, 21:34 przez LordRuthwen, łącznie zmieniany 1 raz.
Powód: używaj znaczników CODE
Topl1
Posty: 2
Rejestracja: 13 lipca 2023, 09:18

Re: Python - szukanie tekstu

Post autor: Topl1 »

Oczywiście! Oto prosty kod w języku Python, który pozwoli Ci przeszukać plik tekstowy w poszukiwaniu określonego wyrazu: def przeszukaj_plik(nazwa_pliku, szukany_wyraz):
with open(nazwa_pliku, 'r') as plik:
for linia in plik:
if szukany_wyraz in linia:
print("Znaleziono wyraz:", szukany_wyraz)
return
print("Nie znaleziono wyrazu:", szukany_wyraz)

nazwa_pliku = 'nazwa_pliku.txt' # Zmień na właściwą nazwę pliku
szukany_wyraz = input("Podaj wyraz do wyszukania: ")

przeszukaj_plik(nazwa_pliku, szukany_wyraz)

Upewnij się, że podajesz poprawną nazwę pliku tekstowego (z rozszerzeniem .txt) w zmiennej nazwa_pliku. W linii szukany_wyraz = input("Podaj wyraz do wyszukania: ") użytkownik zostanie poproszony o wpisanie wyrazu, którego chce wyszukać w pliku. Po wykonaniu kodu, zostanie wyświetlony komunikat, czy wyraz został znaleziony w pliku czy nie.

Pamiętaj, że ten kod przeszukuje plik linijka po linijce, więc jeśli wyraz jest podzielony na wiele linii, zostanie znaleziony tylko wtedy, gdy te linie występują kolejno w pliku. Jeśli potrzebujesz bardziej zaawansowanej logiki wyszukiwania, np. ignorowania wielkości liter lub uwzględniania słów kluczowych, konieczne mogą być dodatkowe modyfikacje kodu.
ODPOWIEDZ