Etsiminen ja Mittaaminen
Pyyhkäise näyttääksesi valikon
Kun osaat lukea merkkijonon osia, seuraava askel on esittää kysymyksiä sen sisällöstä: "sisältääkö se tämän?", "missä se on?", "kuinka monta kertaa?", "alkaako/loppuuko se…?".
Jäsenyys
Käytä in-operaattoria tarkistaaksesi, esiintyykö alimerkkijono missä tahansa merkkijonossa. Palauttaa totuusarvon (Boolean).
12345# Checking if a user's bio mentions specific skills user_bio = "Experienced in Python programming and data analysis." print("Python" in user_bio) # True → the bio mentions Python print("Java" not in user_bio) # True → Java is not listed as a skill
Sijaintien etsiminen
find(sub)palauttaa ensimmäisen osuman aloitusindeksin, tai -1 jos ei löydy;rfind(sub)etsii oikealta ja palauttaa viimeisen osuman indeksin (tai -1);index(sub)toimii kutenfind, mutta nostaaValueError-poikkeuksen jos alimerkkijono puuttuu.
12345678# Searching for keywords inside a product description description = "This brand new bracelet is made from recycled materials." print(description.find("bra")) # 5 → first occurrence of "bra" print(description.rfind("bra")) # 15 → last occurrence "bra" print(description.find("gold")) # -1 → not found, returns -1 print(description.index("bra")) # 5 → same as find(), but raises an error if not found print(description.index("gold")) # ValueError → "gold" not in the text
Esiintymien laskeminen
count(sub) palauttaa kuinka monta kertaa alimerkkijono esiintyy ilman päällekkäisyyksiä.
12345# Counting occurrences of words or letters in a customer review review = "Amazing banana smoothie with banana slices on top!" print(review.count("banana")) # 2 → the word appears twice print(review.count("a")) # 7 → letter 'a' appears multiple times
Alku ja loppu
Merkkijonon alun tai lopun tarkistamiseen käytetään startswith- ja endswith-metodeja. Nämä ovat selkeämpiä ja turvallisempia kuin viipalointi, kun tarvitset vain kyllä/ei-vastauksen.
12345# Checking if the uploaded file has the correct name and format uploaded_file = "report_final.pdf" print(uploaded_file.startswith("report")) # True → file name starts correctly print(uploaded_file.endswith(".pdf")) # True → valid file format for upload
Tapausherkkyyden huomioiminen
Merkkijonometodit ovat tapausherkkiä. Tapausriippumattomaan hakuun normalisoi molemmat osapuolet metodilla .lower() (tai .upper()).
12345# Checking a user's message for a polite greeting user_message = "Hello, team! Let's start the meeting." print("hello" in user_message.lower()) # True → greeting detected print(user_message.lower().startswith("hello")) # True → message begins with "hello"
1. Mitä tämä koodi tulostaa?
2. Mikä väittämä ei aiheuta virhettä, kun alimerkkijono puuttuu?
3. Annetaan s = "Banana", mikä lauseke palauttaa True kirjainkoolla ei ole väliä tarkistettaessa etuliitettä "ba"?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme