Föreläsning 3 Programmeringsteknik

Slides:



Advertisements
Liknande presentationer
Selektion, iteration och datastrukturer
Advertisements

En introduktion till programmeringsspråket Python
1 Listor En sekvens värden av samma typ Nr 5. 2 Listor Sekvens av värden, element Variabelt antal Alla med samma typ Bara första elementet direkt åtkomligt.
2D1311 Programmeringsteknik med PBL
Sökning och sortering Linda Mannila
Programmeringsteknik
Programmeringsteknik Föreläsning 6 Skolan för Datavetenskap och kommunikation.
Repetition inför provet
2D1311 Programmeringsteknik med PBL Föreläsning 7 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL Föreläsning 3 Skolan för Datavetenskap och kommunikation.
Vilken/vilka av följande satser ger syntaxfel:
Programmeringsteknik Föreläsning 4 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL
2D1311 Programmeringsteknik med PBL Föreläsning 7 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL Föreläsning 1 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL Föreläsning 4 Skolan för Datavetenskap och kommunikation.
Programmeringsteknik K och Media
1 Föreläsning 3 Datalogi för E1 / 2D1343 Repetition List List operationer Stränghantering For-slingor.
Föreläsning 2 Datalogi för E1 2D1343
Föreläsning 5 Python: argument från kommando-tolken
Föreläsning 10 Länkade lista Stack och Kö Att arbeta med listor
Föreläsning 4 Python: Definiering av egna funktioner Parametrar
Föreläsning 2 Primitiva datatyper Variabler och konstanter Tilldelning Inläsning Operatorer Villkorssatsen if Slingor: while och for.
Programmering B PHP Lektion 2
Föreläsning 5.  Idag  Kap 7 i Dawson  Filer  Felhantering med try…except.
Föreläsning 11 Arrayer.
OOP F4:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder.
Programmering B PHP Lektion 2
Vektorer (klassen Vector) Sortering
Föreläsning 3 Programmeringsteknik och Matlab DD1312
Listor En lista är en föränderlig ordnad samling objekt.
Programspråk Två olika typer av program omvandlar högnivå till lågnivå program: Interpreterande program och kompilerande program. Python är ett interpreterande.
Funktioner, styrstrukturer, manipulering av matriser
Grundläggande programmering
DD1311 P ROGRAMMERINGSTEKNIK MED PBL Föreläsning 9 Skolan för Datavetenskap och kommunikation.
DD1310/DD1314/DA3009 Programmeringsteknik Föreläsning 1 Skolan för Datavetenskap och kommunikation.
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
1 Föreläsning 5 Programmeringsteknik och Matlab 2D1312/2D1305 Repetition Metoder Array API och klassen ArrayList.
Namnrum, räckvidd och rekursion Linda Mannila
Föreläsning 1 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Föreläsning 5 Arrayer & ArrayList Hur man använder API:n
1 Programmera med strängar nr 9 Tal till sträng Sträng till tal Grep Sträng till lista av ord.
F4 - Funktioner & parametrar 1 Programmeringsteknik, 4p vt-00 Modularisering ”svarta lådor” Väl definierade arbetsuppgifter Enklare validering Enklare.
För utveckling av verksamhet, produkter och livskvalitet. Stack och Kö - Implementering - Tilllämpningar.
Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305
Föreläsning 4 Listor, tupler, och for-loopar. Listor En lista är en föränderlig ordnad samling objekt. Listor skapas med hakparenteser. lista = [12,13,14,15]
Programmeringsteknik Föreläsning 8 Skolan för Datavetenskap och kommunikation.
Planering av ett större program - Funktioner, moduler, if och Boolean Linda Mannila
Föreläsning 7 Programmeringsteknik och Matlab DD1315 Kommandotolk parametrar Klass Instans Metod konstruktor.
2D1311 Programmeringsteknik med PBL Föreläsning 1 Skolan för Datavetenskap och kommunikation.
F5 - Fält & strängar 1 Programmeringsteknik, 4p vt-00 Fält Många element av samma typ Typexempel : lista av heltal Gemensamt namn Individuella värden nås.
Programmeringsteknik Föreläsning 17 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL
2D1311 Programmeringsteknik med PBL Föreläsning 4 Skolan för Datavetenskap och kommunikation.
OOP F13:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 13 Repetition variabler, selektion och iteration.
Föreläsning 2 2D1312 Introduktion till Python Kap 1 och 2 i kursboken.
© Anders Broberg, Ulrika Hägglund, Lena Kallin Westin, 2003 Datastrukturer och algoritmer Föreläsning 13 Sortering.
F2 1 Programmeringsteknik, 4p vt-00 Kommentarer Allt mellan /* och */ Varje kommentar byts ut mot en blank av kompilatorn /* Exempel på uttryck, tilldelningsoperatorn.
Programmeringsteknik
© Anders Broberg, Lena Kallin Westin, 2007 Datastrukturer och algoritmer Föreläsning 14.
1 Matlab, föreläsning 1 Oktober MATLAB Perspektiv på materialdesign Lina Kjellqvist Rum: K324 Telefon:
Föreläsning 7 Repetition Sammansatta datatyper –vektor (hakvektor, array) –matris.
OOP&M - teori1 OOP&M – Föreläsning 5 kap 8-13 Operatorer,typkonvertering, booleska operatorer, if och else.
OOP&M - teori1 OOP– Föreläsning vecka Genomgång uppgifter Arbetsmetoder Repetition Kapitel 14 Metoder.
OOP&M - teori1 OOP – Föreläsning 7 (Sista oop I) Konstruktioner för att hantera upprepningar Kapitel 11.
1 Föreläsning 4 Metoder & parametrar Array API och klassen ArrayList.
Föreläsning 9 Sökning, sortering, grafiska gränssnitt (GUI)
Lektion 4.
Python.
Föreläsning 2 Programmeringsteknik DD1310
Presentationens avskrift:

Föreläsning 3 Programmeringsteknik Listor Tupler strängar for-slingor importera moduler random

Listor En lista är en föränderlig samling objekt. Listor skapas med hakparenteser: [12, 13, 14, 15]

Innehåll i listor En lista kan innehålla element av olika typer: [”hej” , 151 , 10.59] En lista kan innehålla en eller flera listor: [ [”hej”, 151], 10.59] Man kan åstadkomma godtycklig komplicerade strukturer m.h.a listor: list1 = [”hej”] list1 += [”hejdå”, list1]

+,* och listor Listor kan konkateneras: lista = [1,2,3] + [4,5,6] Vad innehåller variabeln lista? Listor kan upprepas: lista = [1,2] lista * 3

Identifiering Ett enskilt element på ett givet index kan identifieras: lista = [12,13, ,15] print(lista[2]) Vad skrivs ut? 1 2 3 14

Dellista Ett startindex och ett övre begränsningsindex ger dellistan. lista2= lista[1:4] Vad innehåller lista2? 1 2 3 4

Dellista Ett startindex, ett övre begränsningsindex och ett intervall ger en annan typ av dellista. lista=[6,7,1,8,5,2,4,9] lista2= lista[1:8:3] Vad innehåller lista2?

Ändra Identifierade element / dellistor kan ändras: lista = [1,2,3,4,5,6] lista[1:3] = [”a”] lista[4] = ”b” print(lista) Vad skrivs ut?

Borttagning Element/dellista kan tas bort: lista = [1,2,3,4,5,6] print(lista) Vad skrivs ut?

Metoder Omvänd ordning på elementen lista = [2,3,1,4,5,7,6] lista.reverse() print(lista) Vad skrivs ut? Sortera elementen lista.sort()

Metoder Lägg till element på slutet lista.append(13) Lägg till lista på slutet lista.extend([1,2,3])

Tupler En tupel är en omuterbara lista. En tupel skapas med vanliga parenteser: t = (1,2,3,4)

+,* och tupler Tupler kan konkateneras: t = (1,2,3) + (4,5,6) print(t) Vad skrivs ut? Tupler kan upprepas: t = (1,2,3) print(t * 3)

Identifiering Ett enskilt element på ett givet index kan identifieras: tupel = (12,13,14,15) print(tupel[2]) Vad skrivs ut?

Deltupel Ett startindex och ett övre begränsningsindex ger deltupeln. print(tupel[2:4]) Vad skrivs ut?

Omuterbarhet En tupel kan inte ändras. t1 = (1,[2,3]) t1[0] = 33 ger fel t1[1] =[2,3,33] ger fel Följande ger INTE fel! t1[1].append(33) Varför?

Strängar En sträng är som en tupel där alla elementen är ”bokstäver”. nose=”En lång näsa” 1 2 3 4 5 6 7 8 9 10 11 E n l å n g n ä s a

Skapa delsträng Strängar kan anses som en lista med bokstäver: state=”urbra” del1=state[0:2] del2=state[2:] del3=state[:3] 1 2 3 4 u r b r a del2 del1 del3

len() Antalet element i listor och tupler: print(len([1,2,5])) Vad skrivs ut? in testar medlemskap i lista, tupel, strängar och dictionary: if 3 in [1,2,3]: print(”3 finns i listan”) else: print(”3 finns inte i listan”)

for-slinga Används för att gå igenom alla element i en lista, tupel, eller sträng. lista = [12,1,10,11,6] for x in lista: print(x,end=” ”) Skriver ut: 12 1 10 11 6

Strukturen for en variabel in en lista : else: Block som exekveras för varje element. Block som exekveras om loopen INTE avbryts med break.

range() Ofta vill man göra något för varje heltal i ett intervall. range() är praktisk i detta fall: for x in range(11): print(x,end=” ”) Skriver ut: 0 1 2 3 4 5 6 7 8 9 10

Mer om range() range kan användas på följande sätt: list(range(3)) [0,1,2] list(range(3,10)) [3,4,5,6,7,8,9] list(range(3,15,2)) [3,5,7,9,11,13]

Mer om range() Avtagande heltalslistor list(range(6,1,-1)) [6,5,4,3,2] [10,8,6,4,2]

Importering av moduler Det finns en hel del funktioner man kan använda genom att importera dem från pythons standard bibliotek. För att importera de så använder man reserverade ordet import. Ett bibliotek av tillgängliga moduler finns i följande sida: http://docs.python.org/3/library/index.html Example: import random random.random() random.randint(0,6) random.choice(range(6))

randrange Om man vill slumpa ett heltal i ett givet intervall, så skriver man: import random t = random.randrange(3,6) r = random.random() Ett av talen 3, 4 eller 5 slumpas och tilldelas variabeln t medan variabeln r kommer att tilldelas ett slumpat decimaltal i intervallet [0, 1)

Sammanfattning Listor, tupler och strängar är strukturmässigt likt varandra Tupler och strängar är omuterbara Tupler är snabbare än listor Tupler ska användas när man har ett antal värde som ska inte ändras under hela programmet. for-slingor i kombination med listor, tupler och strängar är en kraftfull konstruktion. range() underlättar att skapa långa listor av heltal