7 svar
277 visningar
lund är nöjd med hjälpen
lund 529
Postad: 21 nov 2020 20:21

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!

SeriousCephalopod 2692
Postad: 21 nov 2020 20:31 Redigerad: 21 nov 2020 20:31

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 ...
Aerius 504 – Fd. Medlem
Postad: 21 nov 2020 21:58

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.

Laguna Online 28570
Postad: 21 nov 2020 22:24

Vad ska man tänka sig att man ska göra med samlingen av rader? 

lund 529
Postad: 21 nov 2020 22:43 Redigerad: 21 nov 2020 22:58

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:

lund 529
Postad: 21 nov 2020 22:57
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? 

Laguna Online 28570
Postad: 22 nov 2020 09:16

Ja, det är en inbyggd typ.

s = "En textrad"
d = dict()
d[s] = True

lund 529
Postad: 22 nov 2020 19:24
Laguna skrev:

Ja, det är en inbyggd typ.

s = "En textrad"
d = dict()
d[s] = True

Tack!!

Svara Avbryt
Close