Programmering i Python
Hej,
Jag sitter med en uppgift inom programmering i Python dör jag ska lösa följande fråga:
Men jag förstår inte riktigt vad de menar - är det någon som kan hjälpa mig att tyda den?
Tack på förhand!
Jag har en fil med rader av text ex:
[0]Once upon a midnight dreary, while I pondered, weak and weary,
[1]Over many a quaint and curious volume of forgotten lore—
[2]While I nodded, nearly napping, suddenly there came a tapping,
[3]As of some one gently rapping, rapping at my chamber door.
[4]“’Tis some visitor,” I muttered, “tapping at my chamber door—
[5]Only this and nothing more.”
(vilken funktionellt är en lista av strängar motsvarande raderna) genom att du i praktiken får en sökväg "folder/poem.txt". Därutöver får du ett ord, exempelvis ordet "my" och så ska programmet spotta ut raderna som innehåller ordet "my"
[3]As of some one gently rapping, rapping at my chamber door.
[4]“’Tis some visitor,” I muttered, “tapping at my chamber door—
i något format (datastruktur) du ska välja.
Så du kan skriva en funktion
def find_matching_lines(file_path, word):
...
return ...
Om det är möjligt använd alltid en datastruktur som har konstant tid. Till exempel är dictionary av den typen och väldigt bra att använda om man kan.
Vad ska man tänka sig att man ska göra med samlingen av rader?
Tack för tipsen! Av dessa fick jag ihop en kod som fungerade, framförallt när jag förstod frågan ordentligt. Men jag har en fråga till - visst kan man bestämma vad Python ska säga när ett specifikt fel uppstår?
Exempelvis vill jag vid FileNotFindError få fram texten "File not find" istället. Hur går jag tillväga då?
Edit: Denna löste jag med en try: respektive except:
Aerius skrev:Om det är möjligt använd alltid en datastruktur som har konstant tid. Till exempel är dictionary av den typen och väldigt bra att använda om man kan.
Tack för tipset, ska kolla mer på detta! Tillhör dictionary Python?
Ja, det är en inbyggd typ.
s = "En textrad"
d = dict()
d[s] = True
Laguna skrev:Ja, det är en inbyggd typ.
s = "En textrad"
d = dict()
d[s] = True
Tack!!