• No results found

Programmeren en Wetenschappelijk Rekenen in Python Wi1205AE I.A.M. Goddijn, Faculteit EWI 29 april 2014

N/A
N/A
Protected

Academic year: 2021

Share "Programmeren en Wetenschappelijk Rekenen in Python Wi1205AE I.A.M. Goddijn, Faculteit EWI 29 april 2014"

Copied!
17
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Programmeren en Wetenschappelijk Rekenen in Python

Wi1205AE I.A.M. Goddijn, Faculteit EWI

29 april 2014

(2)

Bijeenkomst 3

Onderwerpen

Bespreking ISA-opdracht Geneste loops

Strings

File Input/Output

(3)

For-loops

vb3-1a.py: for-loop,een geneste loop

de naamgeving van variabelen en objecten is

‘casesensitive’

vb3-1b.py: for-loop, een geneste loop vb3-1c.py: for-loop Een fout zit in

een klein hoekje!

(4)

While-loops

vb3-2a.py: while-loop, initialisatie vb3-2b.py: while-loop, stopcriterium

Een fout zit in een klein hoekje!

(5)

Onderbreking van een loop

Met de opdracht break wordt een loop afgebroken en doorgegaan met de opdrachten die hierop volgen.

Met de opdracht continue worden de opdrachten binnen de loop die hierop volgen overgeslagen en verder

doorgegaan met de loop.

vb2-3a.py: for-loop, if-statement en break vb2-3b.py: for-loop, if-statement en continue

Probeer het gebruik van break en continue zoveel mogelijk te vermijden.

(6)

Strings

Een string wordt gebruikt om een tekst op te slaan en wel in de vorm van een rij karakters.

Zij kan worden opgevat kan worden opgevat als een lijst met als elementen karakters.

Er zijn wel verschillen o.a.: een string is onveranderlijk (“immutable”) en een lijst is veranderlijk (“mutable”) Een string wordt opgeslagen door middel van een geheeltallige code, meestal ASCII-code.

Zie: http://www.ascii-code.com/ voor een volledige tabel met codes.

(7)

De ASCII-code van een cijfer, letter, leesteken of speciaal karakter kan gevonden worden met de functie ord( ). Is de ASCII code bekend dan kan het bijbehorende karakter gevonden worden met de functie chr( ).

Speciaal zijn bijvoorbeeld:

Python Symbool Beschrijving chr(13) CR ‘Carriage return’

chr(10) LF ‘Line feed’

chr(9) Tab ‘Tabulator’

(8)

Een nieuwe regel wordt onder verschillende besturingssystemen anders verkregen:

OS Python Afkorting

MS-DOS/Windows chr(13)+chr(10) LF+CR

Unix/OS X chr(10) LF

Maar de volgende opdrachten zijn onafhankelijk hiervan:

“\ t” Tab

“\ n” ‘newline’

“\\” ‘backslash’

vb3-4.py: strings ,chr en ord

(9)

In-en Uitvoer (I/O)

Er zijn verschillende mogelijkheden om de beschikking te krijgen over de inhoud van een bestand (dit te ‘lezen’, tekst daar naar

‘weg te schrijven’ of daaraan ‘toe te voegen’):

f = open(”. . . .

| {z }

bestandsnaam

”,” . . . .

| {z } r(ead) w(rite) a(ppend) etc.

”)

code f.close( )

(10)

with open(”. . . .

| {z }

bestandsnaam

”,” . . . .

| {z } r(ead) w(rite) a(ppend) etc.

”) as f:

ingesprongen code

Opmerking

open is een functie die een fileobject (f) maakt, close is een methode bij een fileobject (functie die op een fileobject werkt).

(11)

Opmerkingen

Naast de modi ‘r’, ‘w’ en ‘a’ zijn er nog meer:

Modus Bestand wordt geopend voor:

r alleen lezen w alleen schrijven

a toevoegen

r+ lezen en schrijven w+ schrijven en lezen a+ toevoegen en lezen

Het bestand dat wordt ‘gelezen’ mag alleen ASCII-code bevatten en heeft bijvoorbeeld als extensies ‘dat’ of ‘txt’.

(12)

Op de plaats van de code moet aangegeven welk gedeelte van het bestand gelezen moet worden. Dat kan door gebruik te maken van de methoden methoden read, readline en readlines (functies werkend op een fileobject in dit geval f):

Wat wordt er gelezen?

f.read( ) het hele bestand

f.read(n) de eerste n karakters van het bestand f.readline( ) ´e´en regel van het bestand

f.readline(n) de eerste n karakters van een regel f.readlines( ) het hele bestand, de regels worden als

elementen opgeslagen in een lijst

(13)

Maar er kan ook met behulp van de methode write op de plaats van de code tekst worden weggeschreven. Als ‘str’ een string is dan wordt met de opdracht f.write(str) een nieuw bestand gemaakt en de ‘str’ weggeschreven. Bestaat het bestand al dan gebeurt dit aan het einde van het bestand.

(14)

Opmerking

Een nieuwe regel en spaties worden geteld als karakters. Een nieuwe regel wordt geteld als ´e´en karakter, Tab wordt geteld als het aantal spaties waar het voor staat (meestal 4).

Voorbeelden

vb3-5a.py: open en close

vb3-5b.py: opnieuw open en close

vb3-5c.py: open en het tellen van karakters vb3-5d.py: open en write

(15)

Nogmaals strings

In de volgende tabel staan een aantal methoden bij het object string (functies die op een string werken):

Methoden strip( ) split( ) upper( ) lower( ) count( ) find( ) replace( ) isalpha( ) isdigit( )

Is txt een string dan werkt bijvoorbeeld de methode strip( ) hierop door de opdracht txt.strip( )

(16)

Voorbeelden

vb3-6a.py: methoden bij een string vb3-6b.py: tekstanalyse

(17)

Jacco Hoekstra:

Programming and Scientific Computing in Python (Version 3.10),

Artikelnummer: 0691770043.

David C. Lay:

Linear Algebra and Its Applications (fourth edition), Pearson (2013),

ISBN-13: 978-1-292-02055-6.

James Stewart:

Calculus, Early Transcedentals (seventh edition), Cengage Learning (2012),

ISBN-13: 978-0-538-49887-6.

Referenties

GERELATEERDE DOCUMENTEN

Your grade will not only depend on the correctness of your answers, but also on your presentation; for this reason you are strongly advised to do the exam in your mother tongue if

den aangevoerd door Oostendse vissers, maar de visgrond is niet meer bekend. Muller in de eerste plaats onderscheiden worden door de algemene vorm van het

(S) ‘Schaallonen ’ : de aanpassing geldt enkel voor de schaallonen; geen aanpassing van de reële lonen wanneer men boven de nieuwe schaallonen betaalt. (R) ‘Reële lonen ’ :

Is bijvoorbeeld een functie sumabs gemaakt, die is opgeslagen in het bestand sumabs.py importeer dit dan met de opdracht:..

Om het resultaat van een tekening of een plaatje vanuit het geheugen naar het scherm te kopi¨ eren wordt de functie flip bij de module display gebruikt. # Plaatje is klaar, laat zien

Gegeven zijn n massa’s ([kg ]) die bewegen in een plat vlak met een daarop werkende bekende kracht (zwaartekracht) ([N]) De massa’s zijn opgeslagen in een array m ([kg ]), de

De melding “Runtime Error” zegt dus dat er iets fout is gelopen tijdens het werken van het programma...

De methode van Newton-Raphson Het benaderen van een bepaalde integraal. De methode van Euler