2) Det er let at være produktiv med Python, da Python som regel kun har mellem 67 og 80% færre linier end tilsvarende C eller Java kode.
|
|
- Rikke Østergaard
- 5 år siden
- Visninger:
Transkript
1 Denne guide er oprindeligt udgivet på Eksperten.dk I gang med Python I denne artikel vil jeg forsøge at give et kort og hurtigt indblik i programmeringssproget Python, der desværre er alt for overset. Skrevet den 03. Feb 2009 af jensgram I kategorien Programmering / Andre Hvad er Python? Og hvorfor bruge det? Python er et programmeringssprog på niveau med C, C++, Java osv. Oftest sammenlignes det med Perl, Tcl og Java, men har dog væsentlige fordele på flere punkter: 1) Kvaliteten på produktet kan blive meget høj (dette er selvfølgelig afhængigt af programmøren), da Python pr. definition er let at læse og forstå. Python har helt særlige regler for blokke og indrykinger, som jeg vil komme ind på om et øjeblik. 2) Det er let at være produktiv med Python, da Python som regel kun har mellem 67 og 80% færre linier end tilsvarende C eller Java kode. 3) Langt de fleste Python programmer vil køre uændret på Windows, *nix og Mac. 4) Python dsitribueres med et enormt standardbibliotek indeholdende funktioner til streng-operationer, regulære udtryk osv. og kan udvides med tredjepartsmoduler som eksempelvis PIL (Python Imaging Library). 5) Python kan meget - GUI'er, interaktive websites, billedmanipulation og meget, meget mere. Og så er indlæringskurven behagelig! Og så er det gratis. Som det fremgår af ovenstående er der altså ingen umiddelbar undskyldning for ikke at se nærmere på sproget. Eneste ulempe ved sproget er, at det ikke er lige så hurtigt som kompileret C eller C++, men i de fleste tilfælde vil Python være hurtigt nok. Nu tænker du måske "hvis Python ikke er et kompileret sprog, hvad er det så?" - Python er et fortolket sprog, der oversættes til byte code og køres af PVM på CPU'en: Source (.py) -> Byte code (.pyc) -> Runtime (PVM) Byte code'n er low-level kompileret Python kode, der er komplet planformsuafhængigt. PVM står for Python Virtual Machine, der eksekverer byte code og er skrevet specifikt til platformen. Installation og brug af Python under Windows Sidste nye version af Python (p.t ) hentes fra Installationsfilen fylder ca. 10MB og er en almindelig WISE installation, der guider dig gennem forløbet. Python installeres som standard i c:\python23. Alternativt kan man benytte Jython, som er Python (oftest omtalt som CPython, når Jython også nævnes) skrevet i Java. Dette er dog noget langsommere, da Java selv kører på en virtuel maskine. Jython nævnes ikke mere i denne artikel, da jeg kun har beskæftiget mig med CPython. Når Python er installeret på din computer kan du komme hurtigt i gang i Pythons shell IDLE, der tillader interaktiv kodning med syntaksfarvning. Dette er et udmærket miljø til at starte med Python. Alle eksempler i denne artikel tager udgangspunkt i IDLE, hvor ">>>" indikerer vores statement linie.
2 Typer i Python Operationer på typer behandles senere, men først en oversigt: 1) Tal: - Integer: Positive og negative heltal (ex: 1, 0, -54) - Float: Decimal tal (ex: 1.23, 3.14, -12.0) - Long integer: Lange heltal, større end 32 bit (ex: L) - Octal: Oktaler (0-7) (ex: 0177 = 7 * 8^0 + 7 * 8^1 + 1 * 8^2 = 127 (decimal)) - Hex: Hexadecimal (0-F) (ex: 0x9F = 15 * 16^0 + 9 * 16^1 = 159 (decimal)) - Complex: Komplekse tal (ex: 1+1j, J, 9J) 2) Strenge: Indkapsles i qoutes (', ", ''' eller """) 3) Lister: Autoindekseret liste med alle typer indhold (ex: liste1 = [], liste2 = [24, 'test', 0xFF]) 4) Dictionaries: Nøgle - værdi par (ex: dic1 = {}, dic2 = {'noegle': 'vaerdi', 'alder': 23, 23 = [1, 'er']}) 5) Tupler: Som lister, men "immutable" - kan altså ikke ændres (ex: tuple1 = (), tuple2 = ('hej', 23, [1, 23])) Operatorer 1) Logisk sammenligning (True / False): x < y, x <= y, x == y, x >= y, x > y, x is y, x is not y, x in y, x not in y 2) Addition og subtraktion: x + y, x - y, x + (-y) osv. 3) Multiplikation, division, potens og modulo: x * y, x / y, x ** y, x % y 4) Logisk OR: x or y 5) Logisk AND: x and y 6) Negation: not x Kommentarer Kommentarer i Python kode startes med et hash (#) og fortsætter linien ud (se eksempel 1). Variabler og assignments Python skelner mellem store og små bogstaver overalt. Variabler kan bestå af tegnene a-z, A-Z, 0-9 og _ (underscore) og skal være minimum ét tegn lange. Desuden må de ikke starte med 0-9. Det er desuden værd at bemærke, at Python arbejder med referencer (modsat værdier), hvis ikke andet angives. Variabler kan tildeles som følger: Eksempel 1: >>> min_var = 'noget tekst' # Simpel form >>> var1 = var2 = var3 = 'indhold' # Multiple assignment (reference til _samme_ streng >>> [pi, e] = [3.14, 2.72] # Liste assignment >>> (pi, e) = (3.14, 2.72) # Tuple assigment >>> pi, e = 3.14, 2.72 # Som ovenstående >>> x += 1 # Augmented assignment (x tælles én op)
3 Augmented assignment gælder også -, /, % osv. IDLE udskriver som standard, men i.py filer skal man benytte print. Følgende eksempel vil udskrive den samme streng to gange i IDLE, men i en.py fil vil var kun udskrives på tredje linie: Eksempel 2: var = 'noget tekst her' var print var If, for, while og indrykninger Indentering (indrykning) er meget vigtigt i Python. I Java (og mange andre sprog) afgrænses blokke af "tuborg"-klammer {}. Det kan man ikke i Python og er faktisk en hovedårsag til, at Python er så letlæst, da man tvinges til at have orden på sine indrykninger. Vi springer straks til et eksempel for at illustrere - her et if-statement: Eksempel 3: if <condition>: # Generel struktur <statements> [elif <conditionn>: <statements>]* [else: <statements>]? >>> if 2 >= 5: print 'Næppe' else: print 'Ja, nemlig ja' # Vil udskrive: Ja, nemlig ja Som antydet med [], * og? kan elif og else udelades - elif kan desuden optræde et vilkårligt antal gange. Python er udstyret med to løkke-strukturer - en generel konstruktion samt en konstruktion til gennemløb af sekvenser (liste, tupler m.v.). While-løkken er den generelle, der kører så længe et givent udsagn er sandt. Derfor er en uendelig løkke let at lave. Strukturen for while er som følger: Eksempel 4: while <condition>: <statements> [else <statements>]? >>> i = 1 >>> while i < 10:
4 i += 1 if i == 5: continue elif i == 9: break print i, # Ingen newline else: print 'Løkken kørte færdig' # Vil udskrive: Her er fyldt lidt ekstra på, men det er stadig relativt simpelt. Så længe i er mindre end 10 tælles den én op. Er i lig 5 startes løkken forfra (de næste statements udføres ikke) og er i lig 9 afbrydes løkken. Således vil else-delen ikke udføres (dette sker, hvis løkken bliver færdig (<condition> == False) uden brug af break. For-løkken laver gennemløb af lister m.v. Derfor vil jeg lige præsentere den indbyggede funktion range(), der tit kan være nyttig i denne sammenhæng. Følgende skulle gerne give et indblik i dens argumenter og opførsel: Eksempel 5: >>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(1, 5) [1, 2, 3, 4] >>> range(10, 20, 2) [10, 12, 14, 16, 18] For-løkken ser ud som følger: Eksempel 6: for <item> in <sequence>: <statements> [else: <statements>]? >>> for i in range(5): print i, else: print '- og nu er jeg færdig' # Vil udskrive: og nu er jeg færdig Ligesom i while-løkken kan der benyttes break og continue med samme effekt. Desuden kan de indbyggede metoder keys() og values() være gode at kende, hvis man kunne tænke sig at iterere over et dictionary. Benyt da mit_dictionary.keys() som <sequence>.
5 Indexing og slicing Indexing og slicing kan udføres på strenge, lister og tupler. Man benytter hårde parenteser [] og kan - som navnene antyder - hente et indeks eller slice (stykke). Skrives et tal mellem parenteserne vil der hentes et indeks. Slicing laves med et kolon (:). Eksempelvis vil [0:2] hente det nulte og første indeks osv.: Eksempel 7: >>> l = [112, 911, 'ild'] >>> l[1] 911 >>> l[0:2] [112, 911] >>> l[:2] [112, 911] # Som ovenstående >>> l[-2] 911 >>> l[1:] [911, 'ild'] >>> l[:] [112, 911, 'ild'] # NB: Dette er en kopi af l Værd at vide: Strenge Formatering af strenge kan foregå ligesom C's sprintf funktion, hvor % benyttes til at indsætte variabler. De mest normale er %s (streng), %d (decimal) og %i (heltal). Efter strengen angives variablen / variablerne i en liste eller tuple adskilt fra strengen med et procenttegn (%). Desuden er der en hel metoder, der knytter sig til strenge. En par eksempler er replace(), upper() og split(). Funktionen len() - der også kan bruges på lister, tupler og dictionaries - returnerer antallet af tegn i en streng. Repetition af strenge kan foregå med * operatoren. Konkatinering klares med +. Desuden kan operatoren in bruges til at undersøge, hvorvidt en streng findes i en anden streng. Eksempel 8: >>> s = '%s is %i years old' % ('Jens', 20) >>> print s Jens is 20 years old >>> s2 = s.replace('jens is', 'I\'m') >>> s2 "I'm 20 years old" >>> s.split(' ') ['Jens', 'is', '20', 'years', 'old'] >>> len(s2) 16 >>> '-' * 20 + ' -' ' '
6 Værd at vide: Lister Lister kan - som strenge - gentages og konkatineres med * og +. Nyttige metoder er: append(), extend(), sort() og reverse(). Bemærk, at disse udføres direkte på listen: Eksempel 9: >>> l = range(3) >>> l + [3, 4] [0, 1, 2, 3, 4] >>> l.append(5) >>> l [0, 1, 2, 5] >>> l.extend([6, 7, 8]) >>> l [0, 1, 2, 5, 6, 7, 8] >>> l.reverse() >>> l [8, 7, 6, 5, 2, 1, 0] Afslutning Dette var en kort introduktion til Python. Jeg håber du fik noget ud af at læse den, og jeg kan på det kraftigste anbefale, at du kigger nærmere på Python. Man kan rigtig, rigtig meget og det er meget let at komme i gang med. Desuden bliver man glad for, at indrykning afgrænser blokke, når man først har vænnet sig til det. - Jens Gram, Relaterede artikler og ressourcer - Pythons officielle site ( ) - Python 2.2 Quick Reference ( ) Change log: 2004/10/24: Første version publiceret Kommentar af simonvalter d. 23. Dec god introduktion Kommentar af izemate d. 25. Oct God og beskrivende artikel med eksempler
7 Kommentar af bernie d. 25. Oct Meget sjovt lige at læse :) Kommentar af optical d. 02. Nov God kort intro Kommentar af morteeart d. 24. Oct Top nice. Gode danske guides er altid godt. Skal klart til at lege med python nu :)
Introduktion til funktioner, moduler og scopes i Python
Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til funktioner, moduler og scopes i Python Denne artikel er fortsættelsen af "I gang med Python", som blevet publiceret her på sitet for
Læs merePython programmering. Per Tøfting. MacFest
Python programmering MacFest 2005 Per Tøfting http://pertoefting.dk/macfest/ Indhold Måder at afvikle Python program på Variabler Data typer Tal Sekvenser Strenge Tupler Lister Dictionaries Kontrolstrukturer
Læs mereLær Python dag 1 - modul 1
Lær Python dag 1 - modul 1 Introduktion, basis python Steffen Berg Klenow Jonas Bamse Andersen Syddansk Universitet Indhold 1. Velkommen 2. Programmering i python 3. Typer, variabler og udtryk 1 Velkommen
Læs mereAt klippe en streng over på det mest hensigtsmæssige sted
Denne guide er oprindeligt udgivet på Eksperten.dk At klippe en streng over på det mest hensigtsmæssige sted Formålet med denne artikel er at kaste lidt lys over, hvordan man klipper en streng over på
Læs mereProgrammering for begyndere Lektion 2. Opsamling mm
Lektion 2 Opsamling mm God tone Der er indlagt spørge sessioner Lektion 2 - Agenda Programmering for Lidt ændringer til teknikken, herunder hvordan du genser en lektion Lidt generelle tilbagemeldinger
Læs mereBits, bit operationer, integers og floating point
Denne guide er oprindeligt udgivet på Eksperten.dk Bits, bit operationer, integers og floating point Denne artikel beskriver hvordan data gemmes som bits og hvordan man kan manipulere med bits. Den forudsætter
Læs mereKontrol-strukturer i PHP
Denne guide er oprindeligt udgivet på Eksperten.dk Kontrol-strukturer i PHP Denne artikel gennemgår kontrolstrukturer i PHP. 'if', 'switch', 'while' og 'for' bliver gennemgået. Den forudsætter lidt grundlæggende
Læs mereJavaScript. nedarvning.
JavaScript er et sprog, der kan give en hjemmeside mere funktionalitet og gøre den interaktiv, så den reagerer på læsernes handlinger. CGI (Common Gateway Interface) har hidtil været de protokoller, man
Læs mere//Udskriver System.out.println("Hej " + ditfornavn + " " + ditefternavn + "."); System.out.println("Du er " + dinalder + " aar gammel!
Denne guide er oprindeligt udgivet på Eksperten.dk Brugerinput i Java Denne her artikel gennemgår diverse ting ved brug af brugerinput i Java. Den starter med det simple og fortæller derefter skridt for
Læs mereStart på Arduino og programmering
Programmering for begyndere Brug af Arduino Start på Arduino og programmering EDR Hillerød Knud Krogsgaard Jensen / OZ1QK 1 Start på Arduino og programmering Sidste gang (Introduktion) Programmeringssproget
Læs mereAnvendelse af metoder - Programmering
Denne guide er oprindeligt udgivet på Eksperten.dk Anvendelse af metoder - Programmering En forhåbentlig rigtig god forklaring på hvad metoder er og hvordan de anvendes. Lidt om private og public, retur
Læs mereUndtagelseshåndtering i C#
Denne guide er oprindeligt udgivet på Eksperten.dk Undtagelseshåndtering i C# I modsætning til C++ kan man i C# ikke skrive et program uden undtagelseshåndtering, så derfor har jeg skrevet denne guide
Læs mereProgrammering i C. Lektion september 2009
Programmering i C Lektion 1 8. september 2009 Målgruppe Motivation Indhold Form Materiale 2 / 47 Kursusintroduktion 1 Målgruppe 2 Motivation 3 Indhold 4 Form 5 Materiale Målgruppe Motivation Indhold Form
Læs mereProgrammering i C Intro og grundlæggende C 5. marts 2007
Programmering i C Intro og grundlæggende C 5. marts 2007 Mads Pedersen, OZ6HR mads@oz6hr.dk Plan for kurset Ma. 5/3: Ma. 19/3: Ma. 2/4: To. 12/4: Formål, intro, grundlæggende Videre, sprogkonstruktioner
Læs merePython 3 kursus lektion 1:
Python 3 kursus lektion 1: Her laves et nyt program Her køre programmet! Her skrives koden: Gem (CTRL-s) Tryk F5 (for at køre) www.madsmatik.dk d.14-01-2016 1/5 At skrive til skærmen: Hello World Man kan
Læs mereNoter til C# Programmering Selektion
Noter til C# Programmering Selektion Sætninger Alle sætninger i C# slutter med et semikolon. En sætning kontrollerer sekvensen i programafviklingen, evaluerer et udtryk eller gør ingenting Blanktegn Mellemrum,
Læs mereForelæsning Uge 2 Torsdag
Forelæsning Uge 2 Torsdag Java syntax og style guide Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Brug
Læs mereI denne artikel, vil der blive gennemgået de grundlæggende PHP-funktioner, såsom udskrift til skærmen, tid og dato og if-sætningen.
Denne guide er oprindeligt udgivet på Eksperten.dk Grundlæggende PHP I denne artikel, vil der blive gennemgået de grundlæggende PHP-funktioner, såsom udskrift til skærmen, tid og dato og if-sætningen.
Læs mereNoter til C# Programmering Iteration
Noter til C# Programmering Iteration Programflow Programmer udfører det meste af deres arbejde vha. forgrening og løkker. Løkker Mange programmeringsproblemer kan løses ved at gentage en handling på de
Læs mereSammenlign og byt. Et eksempel på dokumentering af et program
Sammenlign og byt Et eksempel på dokumentering af et program Sammenlign og byt Jeg har valgt, som et eksempel, at dokumentere et meget enkelt program som indlæser to tal, sammenligner dem og udskriver
Læs mereIt og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen. Tilfældige tal. Statistisk test. Sæt og associationslister.
It og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen Tilfældige tal. Statistisk test. Sæt og associationslister. Tilfældige tal Statistik Sæt Associationslister Downey, Elkner & Meyers:
Læs mereEksempel: Skat i år 2000
Kursus 02199: Programmering afsnit 2.1-2.7 Anne Haxthausen IMM, DTU 1. Værdier og typer (bl.a. char, boolean, int, double) (afsnit 2.4) 2. Variable og konstanter (afsnit 2.3) 3. Sætninger (bl.a. assignments)
Læs mereArrays i PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 04. Feb 2009 af taskmgr I kategorien Programmering / PHP
Denne guide er oprindeligt udgivet på Eksperten.dk Arrays i PHP De fleste som har skrevet omfattende scripts, er før eller siden stødt på problemet med at de bliver vanskelige at overskue hvis man bruger
Læs mereBRP Tal. Om computer-repræsentation og -manipulation. Logaritmer
BRP 13.9.2006 Tal. Om computer-repræsentation og -manipulation. Logaritmer 1. Opgaverne til i dag dækker det meste af stoffet 2. Resten af stoffet logaritmer binære træer 3. Øvelse ny programmeringsopgave
Læs mereProgrammering. Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen
Programmering Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen Oversigt Undervisningen Hvad er programmering Hvordan er et program organiseret? Programmering og fysik Nobelprisen
Læs mereStudiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen
Studiepraktik Thomas Bøgholm boegholm@cs.aau.dk Mikkel Hansen mhan@cs.aau.dk Jacob Elefsen jelefs12@student.aau.dk 1 Studiepraktik -- program Program onsdag 10.00 10.15 Registrering af fremmøde og gennemgang
Læs mereLærevejledning. - en introduktion til maskinarkitektur. faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen
Lærevejledning - en introduktion til maskinarkitektur faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Roskilde Universitetscenter Naturvidenskabelig Basisuddannelse
Læs mereSproget Rascal (v. 2)
Sproget Rascal (v. 2) Til brug i K1 på kurset Oversættere Opdateret 29/11 2004 Abstract Rascal er et simpelt Pascal-lignende imperativt sprog. Dette dokument beskriver uformelt Rascals syntaks og semantik
Læs mereI denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal.
Denne guide er oprindeligt udgivet på Eksperten.dk Afrund til helt tal I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal. Skrevet den 03. Feb 2009 af tjomsen I kategorien
Læs mereIntroduktion til SQL queries
Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til SQL queries Denne artikel beskriver nogle forskellige muligheder i SQL queries. Eksemplerne skulle gerne være standard SQL og virke i
Læs mereLRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) { int wmid, wmevent; programmering med
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) int wmid, wmevent; PAINTSTRUCT Introduktion ps; til HDC hdc; programmering med switch (message) case WM_COMMAND: wmid = LOWORD(wParam);
Læs mereProgrammering C RTG - 3.3 09-02-2015
Indholdsfortegnelse Formål... 2 Opgave formulering... 2 Krav til dokumentation af programmer... 3 ASCII tabel... 4 Værktøjer... 5 Versioner af ASCII tabel... 6 v1.9... 6 Problemer og mangler... 6 v2.1...
Læs mereRepræsentation af tal
Repræsentation af tal DM534 Rolf Fagerberg 1 / 18 Mål Målet for disse slides er at beskrive, hvordan tal repræsenteres som bitmønstre i computere. Dette emne er et uddrag af kurset DM548 Computerarkitektur
Læs mereSom sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste
Denne guide er oprindeligt udgivet på Eksperten.dk Indkøbsvogn i PHP I denne artikel vil jeg prøve at lave en indkøbskurv som let kan udvides, og som ikke er svær at forstå. Det er bedst med viden om OOP(klasser),
Læs mereDDD Runde 2, 2015 Facitliste
DDD Runde 2, 2015 Facitliste Søren Dahlgaard og Mathias Bæk Tejs Knudsen Opgaver og løsninger til 2. runde af DDD 2015. 1 4. 19. februar, 2015 linetest DK v1.0 Line Test Sigurd er begyndt i gymnasiet og
Læs mereProgrammering I Java/C#
Programmering I Java/C# Dit første projekt Datatekniker Intro to C# C# (C Sharp) Et enkelt, moderne, generelt anvendeligt, objektorienteret programmeringssprog Udviklet af Microsoft, ledet af danskeren
Læs mereAarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00
Page 1/12 Aarhus Universitet, Science and Technology, Computer Science Exam Wednesday 27 June 2018, 9:00-11:00 Allowed aid: None The exam questions are answered on the problem statement that is handed
Læs mereDatabase design for begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk Database design for begyndere Denne artikel beskriver hvordan man kommer fra ide til database design. Den stopper inden normal former. Den forudsætter
Læs mereAbstrakte datatyper C#-version
Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Abstrakte datatyper C#-version Finn Nordbjerg 1/9 Abstrakte Datatyper Denne note introducerer kort begrebet abstrakt datatype
Læs mereHvad er Objekter - Programmering
Denne guide er oprindeligt udgivet på Eksperten.dk Hvad er Objekter - Programmering En rigtig god gennemgang af hvad objekter er! Hvordan de oprettes og anvendes! Det er helt klart til nybegyndere, som
Læs mereCPUer og maskinkode DM534. Rolf Fagerberg
CPUer og maskinkode DM534 Rolf Fagerberg CPUers opbygning En CPU er bygget op af elektriske kredsløb (jvf. sidste forelæsning), som kan manipulere bits. En CPU manipulerer flere bits ad gangen, deres antal
Læs mereForelæsning Uge 4 Mandag
Forelæsning Uge 4 Mandag Algoritmeskabeloner Kan (ved simple tilretningerne) bruges til at implementere metoder, der gennemsøger en arrayliste (eller anden objektsamling) og finder objekter, der opfylder
Læs mereLogging i Java. Den forudsætter kendskab til Java og noget generel udviklings erfaring. Denne guide er oprindeligt udgivet på Eksperten.
Denne guide er oprindeligt udgivet på Eksperten.dk Logging i Java Denne artikel beskriver baggrunden for logging frameworks og viser hvordan man bruger 2 af de mest almindelige: Apache Log4J og J2SE/Java
Læs mereMircobit Kursus Lektion 3 (Du skal her vælge Lets Code Og nederst Microsoft Block Editor.)
Mircobit Kursus Lektion 3 http://microbit.org/ (Du skal her vælge Lets Code Og nederst Microsoft Block Editor.) I sidste lektion var der en opgave man selv skulle prøve at løse. Man skulle lave et tabel
Læs mereProgrammering i C. Lektion oktober 2008
Programmering i C Lektion 2 20 oktober 2008 Historie Processen At kompilere 2 / 23 Fra sidst 1 Historie 2 Processen 3 At kompilere Historie Processen At kompilere 3 / 23 ALGOL 60 1963 CPL 1966 BCPL 1969
Læs mereALMINDELIGT ANVENDTE FUNKTIONER
ALMINDELIGT ANVENDTE FUNKTIONER I dette kapitel gennemgås de almindelige regnefunktioner, samt en række af de mest nødvendige redigerings- og formateringsfunktioner. De øvrige redigerings- og formateringsfunktioner
Læs mereLige siden den elektroniske computers opfindelse i slutningen af 1940, har det været muligt at få en computer til at beregne ting.
Denne guide er oprindeligt udgivet på Eksperten.dk C++ Historie og Programmering - Del 1 Denne guide er til dig der altid har undret dig over hvordan du får en computer til at udføre specifikke opgaver.
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 13. marts, 2018 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs merePython 3 Matematik Programmerings kursus:
Python 3 Matematik Programmerings kursus: Kompendiet indeholder: Hello World (første program) Variable (String & Integer) Løkker (while-loop) Regneoperationer If-else statement Funktioner Opgaver o Læg
Læs mereKapitel 4 Løkker i C#
Kapitel 4 Løkker i C# Løkker en vigtig del af alle programmeringssprog, og C# er ikke andeles. En løkke er en måde at udføre en del af koden gentagne gange. Ideen er at du fortsætter med at udføre en opgave
Læs mereRMI introduktion. Denne artikel beskriver Java RMI (Remtote Method Invocation).
Denne guide er oprindeligt udgivet på Eksperten.dk RMI introduktion Denne artikel beskriver Java RMI (Remtote Method Invocation). Den beskriver teorien bag RMI, viser et simpelt kode eksempel og forklarer
Læs mereJeg har i forbindelse med it og programmering designet og udviklet et it-produkt, som kan beregne rødder i en anden gradsligning.
Indhold Beregn rødder... 2 Beskrivelse af kærneproblemet... 2 Plan for brugerfladen for programmet... 3 Operationer på inddata... 4 Output - Beskrivelse af uddata... 4 Flowchart - programmets logiske opbygning/struktur...
Læs mereListen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:
Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra
Læs mereBaggrundsnote om logiske operatorer
Baggrundsnote om logiske operatorer Man kan regne på udsagn ligesom man kan regne på tal. Regneoperationerne kaldes da logiske operatorer. De tre vigtigste logiske operatorer er NOT, AND og. Den første
Læs mereIt og informationssøgning Forelæsning september 2006 Nils Andersen. Gentagelser og tekster
It og informationssøgning Forelæsning 3 20. september 2006 Nils Andersen Gentagelser og tekster Dokumentationstekster Iteration (gentagelse) - med while - med for En- og todimensionale tabeller Typen af
Læs mereUniversity of Southern Denmark Syddansk Universitet. DM502 Forelæsning 4
DM502 Forelæsning 4 Flere kontrolstrukturer for-løkke switch-case Metoder Indhold Arrays og sortering af arrays String-funktioner for-løkke Ofte har man brug for at udføre det samme kode, for en sekvens
Læs mereForelæsning Uge 2 Mandag
Forelæsning Uge 2 Mandag Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Java syntax og style guide Afleveringsopgave:
Læs mereRegulære udtryk, 2. del
Denne guide er oprindeligt udgivet på Eksperten.dk Regulære udtryk, 2. del Artiklen uddyber mange af de begreber, som blev introduceret i den 1. artikel. Den burde dog kunne læses alene, hvis man allerede
Læs mereIntroduktion Til Konkurrenceprogrammering
Introduktion Til Konkurrenceprogrammering Søren Dahlgaard og Mathias Bæk Tejs Knudsen {soerend,knudsen}@di.ku.dk Version 0.1 Indhold Indhold i Introduktion 1 1 Palindromer 3 1.1 Introduktion til Python...............
Læs mereProgrammering i C. Lektion 4. 5. december 2008
Programmering i C Lektion 4 5. december 2008 Funktioner Eksempel Fra sidst 1 Funktioner 2 Eksempel Funktioner Eksempel Eksempel: 1 / f u n k t i o n s p r o t o t y p e r / i n t i n d l a e s ( void )
Læs mereIt og informationssøgning Forelæsning december 2006 Jakob Grue Simonsen. Diverse emner af almen interesse
It og informationssøgning Forelæsning 12 6. december 2006 Jakob Grue Simonsen Diverse emner af almen interesse 1 Gemme objekter til filer I python skal en fil på disken åbnes, før man kan læse eller skrive
Læs mereTest af It-komponent
Test af It-komponent I programmeringssproget Java Programmet Login service Elev: Mads Funch Klasse 2.4 Mat, It, Programmering Skole: Roskilde Tekniske Gymnasium HTX Underviser: Karl Dato: 31-08-2016 Side
Læs mereGreenfoot En kort introduktion til Programmering og Objekt-Orientering
Greenfoot En kort introduktion til Programmering og Objekt-Orientering Greenfoot er et computer-program, som kan benyttes til at skrive andre computer-programmer, i et programmeringssprog kaldet Java.
Læs mereForelæsning 17, tirsdag 2. november 1999 Søgning efter en given værdi i en tabel. Programmering 1999
sammenligninger, hvor Programmering 1999 Forelæsning 17, tirsdag 2 november 1999 Søgning efter en given værdi i en tabel Lineær søgning og binær søgning Effektivitet: maskinuafhængig vurdering af køretid
Læs mereStart på javascript. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 03. Feb 2009 af webstuff I kategorien Programmering / JavaScript
Denne guide er oprindeligt udgivet på Eksperten.dk Start på javascript En begynder artikel til javascript som vil gennemgå: 1: Intro 2: Variabler 3: Arrays 4: Matematik 5: Betingelser 6: Løkker 7: Funktioner
Læs mereLærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner
Virtuel PC Fordele/ulemper Fordele: Lærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner Ulemper: Reserverer RAM (Windows 7) Problemer med at ureglementeret lukke ned Mister
Læs mereHvilket sprog er hurtigst
Denne guide er oprindeligt udgivet på Eksperten.dk Hvilket sprog er hurtigst Denne artikel forsøger at aflive forskellige myter om hvilke sprog der er hurtigst. Den forudsætter ikke noget særligt. Skrevet
Læs mereIt og informationssøgning Forelæsning 1 6. september 2006 Nils Andersen. Beregning på computer
It og informationssøgning Forelæsning 1 6. september 2006 Nils Andersen Beregning på computer Begrebet data Universel computer Højere programmeringssprog Python Dialogdrift Fejl (syntaksf., udførelsesf.,
Læs mereThreads i Java. Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java
Denne guide er oprindeligt udgivet på Eksperten.dk Threads i Java Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java Den forudsætter
Læs mereUpload af billeder/filer for nybegyndere Del. 2
Denne guide er oprindeligt udgivet på Eksperten.dk Upload af billeder/filer for nybegyndere Del. 2 I denne Del vil jeg ikke gaa saa dybt i fil upload som i sidste. Jeg vil i stedet forklare om funktioner
Læs mereForskellige Java versioner
Denne guide er oprindeligt udgivet på Eksperten.dk Forskellige Java versioner Denne artikel beskriver lidt om de forskellige Java versioner. Den forklarer J2SE/J2ME/J2EE, plugin/jre/sdk og Sun Java/Microsoft
Læs mereI denne artikel vil vi bruge en User klasse som vi så vil gruppere på forskellige måder.
Denne guide er oprindeligt udgivet på Eksperten.dk Collections i.net Når du kigger i namespacet System.Collections finder du over 10 forskellige klasser. At vælge den rigtige til netop din applikations
Læs mere26 Programbeviser I. Noter. PS1 -- Programbeviser I. Bevis kontra 'check af assertions' i Eiffel. Betingelser og bevisregler.
26 Programbeviser I. Bevis kontra 'check af assertions' i Eiffel. Betingelser og bevisregler. Hvad er programverifikation? Bevisregel for 'tom kommando'. Bevisregel for assignment. Bevisregler for selektive
Læs mere#AlleKanKode. Lektion 2 - Konstanter og Variabler
#AlleKanKode Lektion 2 - Konstanter og Variabler Disclaimer / Ansvarsfraskrivelse Alt du deler og siger mm bliver optaget. Lad være med at dele privat oplysninger, adgangskoder, kreditkort oplysninger
Læs mereDenne rapport vil beskæftige sig med hvordan computere bruger matematiske algoritmer til at sortere tal efter størrelse.
Sorteringsalgoritmer Af Tobias André Højsgaard Klasse 2.4 Roskilde Tekniske Gymnasium IT Opgavens mål Denne rapport vil beskæftige sig med hvordan computere bruger matematiske algoritmer til at sortere
Læs mereDM536. Rapport og debug
DM536 Rapport og debug Kilder Vigtig.it (Felix Palludan Hargreaves) http://vigtig.it/dm502/howto_report.pdf http://vigtig.it/blog/teaching/#toc-relevant-tips Peter Schneider-Kamp http://imada.sdu.dk/~petersk/dm536/project2.pdf
Læs merePrepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC.
Denne guide er oprindeligt udgivet på Eksperten.dk Prepared Statements Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Skrevet den 18. Feb 2010
Læs mereSortering. Eksempel: De n tal i sorteret orden
Sortering 1 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden
Læs mereKom igang med Scroll:bit
Kom igang med Scroll:bit 1. Forbind scroll:bit til din micro:bit Indsæt micro:bit i edge-connectoren på din scroll:bit. Displayet på micro:bit og scroll:bit skal vende samme vej. Se billede nedenfor. Det
Læs mereSend fra Java. Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende fra Java.
Denne guide er oprindeligt udgivet på Eksperten.dk Send email fra Java Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende email fra Java. Simple eksempler ikke noget vildt
Læs mereEkstra hastighed med array's i Excel-VBA
Denne guide er oprindeligt udgivet på Eksperten.dk Ekstra hastighed med array's i Excel-VBA Brugen af arrays til indlæsning af og skrivning til celler i Excel kan give betragtelige hastighedsforøgelser
Læs mereKapitel 3 Betinget logik i C#
Kapitel 3 i C# er udelukkende et spørgsmål om ordet IF. Det er faktisk umuligt at programmere effektivt uden at gøre brug af IF. Du kan skrive små simple programmer. Men når det bliver mere kompliceret
Læs mereProgrammering i C Videre med C (2 af 4) 19. marts 2007
Programmering i C Videre med C (2 af 4) 19. marts 2007 Mads Pedersen, OZ6HR mads@oz6hr.dk Plan i dag Brush-up fra sidst Videre med C Kontrolløkker (while, for, ) Conditional Execution (if, if/else) Funktioner
Læs mereDatabase tips. Den forudsætter lidt kendskab til SQL men er for mindre erfarne. Denne guide er oprindeligt udgivet på Eksperten.dk
Denne guide er oprindeligt udgivet på Eksperten.dk Database tips Denne artikel vil give nogle forskellige små praktiske råd om ting man skal tænke på når man arbejder med databaser og applikationer som
Læs mereMozilla Firefox (tidligere Firebird): Fremhæve ord
Denne guide er oprindeligt udgivet på Eksperten.dk Mozilla Firefox (tidligere Firebird): Fremhæve ord Du kender sikkert Google Værktøjslinjen til Internet Explorer, ellers har du sikkert hørt om den. I
Læs mereProgrammering i C. Kursusintroduktion. Lektion september Målgruppe 2 Indhold 3 Form 4 Materiale. Målgruppe Indhold Form Materiale
Programmering i C Lektion 1 16. september 2008 Målgruppe Indhold Form Materiale Kursusintroduktion 1 Målgruppe 2 Indhold 3 Form 4 Materiale 2 / 21 Målgruppe Indhold Form Materiale Folk der har styr på
Læs mereForelæsning Uge 4 Mandag
Forelæsning Uge 4 Mandag Algoritmeskabeloner findone, findall, findnoof, findsumof Primitive typer (forfremmelse og begrænsning) Identitet versus lighed (for objekter, herunder strenge) Opfølgning på Skildpadde
Læs mereJava Programmering. En bog for begyndere. Skrevet af Henrik Kressner
Java Programmering En bog for begyndere Skrevet af Henrik Kressner Indholdsfortegnelse Introduktion...3 1 Introduktion til Java...4 1.1 Javakoden...4 1.2 Det første program...6 1.2 Skriv til skærmen...6
Læs mereSkriftlig eksamen i Datalogi
Roskilde Universitetscenter side 1 af 9 sider Skriftlig eksamen i Datalogi Modul 1 Vinter 1999/2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 5% Opgave 2
Læs mereIndledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen.
Indledning...2 Variabler...13 Eksempel: 1...13 Eksempel 2:...13 Eksempel 3:...15 Eksempel 4:...16 Metoder...17 Metode (intet ind og intet ud)...17 Metode (tekst ind)...18 Metode (tekst ind og tekst ud)...19
Læs mereSproget Limba. Til brug i G1 og K1. Dat1E 2003
Sproget Limba Til brug i G1 og K1 Dat1E 2003 Abstract Limba er et simpelt imperativt sprog med hoballokerede tupler. Dette dokument beskriver uformelt Limbas syntaks og semantik samt en fortolker for Limba,
Læs mereAfsending af s vha. ASP
Denne guide er oprindeligt udgivet på Eksperten.dk Afsending af emails vha. ASP Det kan ofte være praktisk at afsende emails fra sin hjemmeside. Denne artikel tager udgangspunkt i komponenten JMail fra
Læs mereSortering. Eksempel: De n tal i sorteret orden
Sortering 1 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden
Læs mereLær Python - Dag 4, modul 2 Objektorienteret programmering
Lær Python - Dag 4, modul 2 Objektorienteret programmering Simon J. Larsen 28. oktober 2017 Institut for Matematik og Datalogi Metoder Metoder Indtil videre har vi kun brugt objekter til at gemme værdier.
Læs mereNavn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato: 14-05-2003
Side 1 af 8 Dato: 14-05-2003 Til Sigurd Som aftalt vil jeg her fremsende vores program til vores 80C535 kit og display. Det gik jo ud på at vi skulle starte med at få den til at intialiserer displayet,
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 20. marts, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereSortering af information er en fundamental og central opgave.
Sortering Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,
Læs mereDenne artikel er en detaljeret gennemgag af det fundamentale i batchfiler til hjemmebrug :-) FEEL THE POWER! ;-)
Denne guide er oprindeligt udgivet på Eksperten.dk Batch genopfriskning Denne artikel er en detaljeret gennemgag af det fundamentale i batchfiler til hjemmebrug :-) FEEL THE POWER! ;-) Skrevet den 03.
Læs mereIndholdsfortegnelse Forord...8 Makroer samt aktivere Udvikler-fanen...10 Makrosikkerhed (Sikkerhedsindstillinger)...13
1 Indholdsfortegnelse Forord...8 Makroer samt aktivere Udvikler-fanen...10 Hvad er en makro... 10 Hvad kan du bruge en makro til... 10 Hvad en makro er (Visual Basic for Applications)... 11 Det hele sker
Læs mereForelæsning Uge 4 Torsdag
Forelæsning Uge 4 Torsdag Klassevariabler og klassemetoder Levetid for variabler og parametre Virkefeltsregler Projektopgave Kaninjagt Lommeregner (for MAT studerende) Klassevariabler og klassemetoder
Læs mere