Γιώργοσ Μανήσ Επίκουροσ Καθηγητήσ Τμήματοσ Μηχανικών Η/Υ και Πληροφορικήσ 2 Ιουλίου 2014
|
|
- Ξένη Ουζουνίδης
- 8 χρόνια πριν
- Προβολές:
Transcript
1 Γιώργοσ Μανήσ Επίκουροσ Καθηγητήσ Τμήματοσ Μηχανικών Η/Υ και Πληροφορικήσ 2 Ιουλίου 2014
2
3 Python Η Python δθμιουργικθκε το 1990 Ο κφριοσ ςτόχοσ τθσ είναι θ αναγνωςιμότητα του κϊδικά τθσ και θ ευκολία χριςθσ τθσ. ζχει πολλζσ βιβλιοθήκεσ που διευκολφνουν ιδιαίτερα αρκετζσ ςυνθκιςμζνεσ εργαςίεσ Και για τθν ταχφτητα εκμάθηςησ τθσ Πθγι: Βικιπαίδεια
4 Python Ανοικτό Λογιςμικό Η Python αναπτφςςεται ωσ ανοιχτό λογιςμικό Η διαχείριςι τθσ γίνεται από τον μη κερδοςκοπικό οργανιςμό Python Software Foundation Ο κϊδικασ διανζμεται με τθν άδεια Python Software Foundation License θ οποία είναι ςυμβατι με τθν GPL.
5 Python Ανοικτό Λογιςμικό Ο κϊδικασ διανζμεται με τθν άδεια Python Software Foundation License θ οποία είναι ςυμβατι με τθν GPL. Οι χριςτεσ μπορουν: να τρζξουν ζνα πρόγραμμα για οποιοδιποτε λόγο. να μελετιςουν τθ λειτουργία ενόσ προγράμματοσ και να το τροποποιιςουν να διανείμουν αντίγραφα του προγράμματοσ ζτςι ϊςτε να βοθκιςουν τον πλθςίον να βελτιϊςουν το πρόγραμμα και να προςφζρουν τισ βελτιϊςεισ ςτο κοινό, ζτςι ϊςτε να ωφελθκεί ολόκλθρθ θ κοινότθτα
6 Python Το όνομα τθσ γλϊςςασ προζρχεται από τθν ομάδα Άγγλων κωμικϊν Μόντυ Πάικον.
7 Εκδόςεισ τθσ Python Αρχικά, θ Python ιταν γλϊςςα ςεναρίων που χρθςιμοποιοφνταν ςτο λειτουργικό ςφςτθμα Amoeba, ικανι και για κλιςεισ ςυςτιματοσ. Η Python 2.0 κυκλοφόρθςε το 2000 Το 2008 κυκλοφόρθςε θ ζκδοςθ 3.0. Πολλά από τα καινοφργια χαρακτθριςτικά αυτισ τθσ ζκδοςθσ ζχουν μεταφερκεί ςτισ εκδόςεισ 2.6 και 2.7 που είναι προσ τα πίςω ςυμβατζσ. Η Python 3 είναι ιςτορικά θ πρϊτθ γλϊςςα προγραμματιςμοφ που ςπάει τθν προσ τα πίςω ςυμβατότθτα με προθγοφμενεσ εκδόςεισ
8 Python Διερμθνευτισ ι Μεταφραςτισ? Οι γλϊςςεσ δεν είναι οφτε διερμθνευτζσ οφτε μεταφραςτζσ Οι γλϊςςεσ απλά περιγράφουν κανόνεσ με τουσ οποίουσ μποροφμε να «ςυνεννοθκοφμε» με τον υπολογιςτι Ο τρόποσ μετάφραςησ κϊδικα ςε γλϊςςα μθχανισ μπορεί να διαχωριςτεί με βάςθ τισ δφο αυτζσ τεχνολογίεσ Η χρυςι τομι όμωσ ςε ςφγχρονεσ γλϊςςεσ βρίςκεται κάπου ανάμεςα ςτισ δφο φιλοςοφίεσ, εκμεταλλευόμενεσ τα πλεονεκτιματα τισ κάκε μίασ από αυτζσ
9 Python Διερμθνευτισ ι Μεταφραςτισ? Κάκε υλοποίθςθ τθσ Python ςυνοδεφεται και από ζναν διερμηνευτή Όταν ζνα κϊδικασ γίνεται import (???) παράγεται bytecode για μία εικονικι μθχανι τθσ Python, ο κϊδικασ αυτόσ αποκθκεφεται ςτο δίςκο και δεν ξαναμεταφράηεται, παρά όταν ξαναγίνει import Αλλά το bytecode δεν είναι γλϊςςα μθχανισ, είναι ανεξάρτθτο από το υλικό ςτο οποίο τρζχει
10 Python Διερμθνευτισ ι Μεταφραςτισ? Υπάρχουν επίςθσ υλοποιιςεισ τθσ Python που ακολουκοφν τθν πρακτικι just-in-time compilation Η μετάφραςθ γίνεται ςε χρόνο εκτζλεςησ, όχι νωρίτερα Ο κϊδικασ που κα παραχκεί μπορεί να αποθηκευτεί ςτο δίςκο ζτςι ϊςτε να μθν είναι απαραίτθτο να μεταφραςτεί πάλι όταν εκτελεςτεί
11 Python θ Python είναι εξαιρετικά δημοφιλήσ γλϊςςα προγραμματιςμοφ μπορείσ να κάνεισ εφκολα και γρήγορα ανάπτυξθ εφαρμογϊν Είναι τθσ φιλοςοφίασ του ανοικτοφ κώδικα ζχει αναπτυχκεί ιδθ πολφ λογιςμικό ςε Python Υπάρχει μεγάλοσ αρικμόσ από διακζςιμεσ βιβλιοθήκεσ μπορεί κανείσ να τθ χρθςιμοποιιςει ωσ γλϊςςα διαδικαςιακοφ ι και αντικειμενοςτρεφοφσ προγραμματιςμοφ
12 Διαδραςτικόσ Διερμθνευτισ >>> print("hello, world! ) Hello, world! >>> >>> 1/2 0.5 >>> 4/2 2.0
13 Ακζραιοι και Πραγματικοί Οι αριθμοί 3 και 5 είναι ακζραιοι. Οι αριθμοί 3.5 και 5.0 είναι αριθμοί κινητήσ υποδιαςτολήσ. >>>1//2 0 (ακζραια διαίρεςθ) >>>1.0// >>>1.0//2 0.0
14 Διαίρεςθ και Υπόλοιπο >>>10%3 1 (υπόλοιπο διαίρεςθσ) >>>2.75/ >>>2.75// >>>2.75%
15 Φψωςθ ςε Δφναμθ >>>2**3 8 (Φψωςθ ςε δφναμθ) >>>-3**2-9 >>>(-3)**2 9
16 Αρικμθτικά Συςτιματα AF ςτο δεκαεξαδικό ςφςτημα ιςοφται με 10*16+15=175 ςτο δεκαδικό >>>0xAF ςτο οκταδικό ςφςτημα ιςοφται με 1*8+0=8 ςτο δεκαδικό ςφςτημα >>>0o10 8
17 Μεταβλθτζσ >>>x=3 (απόδοςθ τιμισ) >>>x*2 6 >>>3*2 6 >>>print(3*2) 6
18 Input >>>input( How old are you? ) How old are you? >>>x=input( x: ) x: 34 >>>x 34
19 Input >>>x=int(input( x: )) x: 34 >>>y=float(input( y: )) y: 42 >>>print(x*y)
20 Συναρτιςεισ >>>2**3 8 >>>pow(2,3) 8 >>>10+pow(2,3*5)/ >>>abs(-10) 10 >>>round(3.8) 4
21 Modules Το math είναι module. >>>import math >>>math.floor(3.8) 3 Μπορώ να ειςαγάγω ςυγκεκριμζνεσ ςυναρτήςεισ από ζνα module: >>>from math import sqrt >>>sqrt(9) 3.0
22 Μιγαδικοί αρικμοί >>>sqrt(-1) Traceback (most recent call last): File "<pyshell#74>", line 1, in <module> sqrt(-1) ValueError: math domain error
23 Μιγαδικοί αρικμοί >>>import cmath >>>cmath.sqrt(-1) 1j >>>(1+3j)*(9+4j) (-3+31j)
24 Αλφαρικμθτικά (strings) Μονά και διπλά ειςαγωγικά είναι το ίδιο >>> Hello, world! Hello, world! >>> Let s go! Let s go! Εναλλακτικά: >>> Let\ s go! Let s go!
25 Συνζνωςθ αλφαρικμθτικϊν >>> Hello, + world! Hello, world! Εναλλακτικά: >>> Hello, world! >>>x= Hello, >>>y= world! >>>x+y Hello, world!
26 Δομζσ δεδομζνων Οι βαςικζσ δομζσ δεδομζνων ςτθν Python είναι οι ακολουκίεσ (sequences). Τα κφρια είδθ ακολουκιϊν ειναι οι: Λίςτεσ (lists) Πλειάδεσ (tuples) Η βαςικι τουσ διαφορά είναι ότι οι λίςτεσ μποροφν να μεταβλθκοφν ενϊ οι πλειάδεσ όχι. Τα αλφαρικμθτικά (strings) είναι επίςθσ ακολουκίεσ.
27 Λίςτεσ Ζςτω ότι κζλουμε να φτιάξουμε μία βάςθ δεδομζνων που να περιλαμβάνει ονόματα και θλικίεσ. >>>george=* Γιϊργοσ Μανισ, 42+ >>>peter=* Πζτροσ Παπαδόπουλοσ, 50+ >>>database=[george, peter] >>>database ** Γιϊργοσ Μανισ, 42+, * Πζτροσ Παπαδόπουλοσ, 50++
28 Δείκτεσ κζςθσ (indexing) >>>greeting= Hello >>>greeting[0] H Οι ακολουθίεσ ςτην Python ξεκινοφν από το ςτοιχείο 0. >>>greeting[-1] o Αρνθτικόσ δείκτθσ κζςθσ μετράει από τα δεξιά. >>> Hello *1+ e
29 Δείκτεσ κζςθσ (indexing) >>> fourth = input('year: ')[3] Year: 2005 >>> fourth '5'
30 Slicing >>>numbers=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>>numbers[3:6] [4, 5, 6] Ο πρϊτοσ αρικμόσ είναι ο δείκτθσ κζςθσ του πρϊτου ςτοιχείου, ενϊ δεφτεροσ αρικμόσ είναι ο δείκτθσ κζςθσ του επόμενου ςτοιχείου από το τελευταίο που κζλουμε να ςυμπεριλάβουμε. >>>numbers[0:1] [1]
31 Slicing >>>numbers=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Αν μετριςω τα ςτοιχεία από τα δεξιά: >>>numbers[-3:-1] [8, 9] Ζτςι δεν μπορϊ να προςπελάςω το τελευταίο ςτοιχείο: >>>numbers[-3:0] []
32 Slicing Μπορϊ να κάνω το εξισ: >>>numbers[-3:] [8, 9, 10] Επίςθσ: >>>numbers[:3] [1, 2, 3] >>>numbers[:] [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
33 Βιμα >>>numbers[0:10:1] [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>>numbers[0:10:2] [1, 3, 5, 7, 9] >>>numbers[3:6:3] [4] >>>numbers[::4] [1, 5, 9]
34 Αρνθτικό βιμα >>>numbers=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>>numbers[8:3:-1] [9, 8, 7, 6, 5] >>>numbers[10:0:-2] [10, 8, 6, 4, 2] >>>numbers[0:10:-2] [] >>>numbers[::-2] [10, 8, 6, 4, 2] >>>numbers[5::-2] [6, 4, 2] >>>numbers[:5:-2] [10, 8]
35 Πρόςκεςθ ακολουκιϊν >>>[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] >>> Hello, + world! Hello, world >>>*1, 2, 3+ + world! Traceback (most recent call last): File "<pyshell#31>", line 1, in <module> [1, 2, 3] + 'world!' TypeError: can only concatenate list (not "str") to list
36 Πολλαπλαςιαςμόσ >>> python * 5 'pythonpythonpythonpythonpython >>>[42] * 10 [42, 42, 42, 42, 42, 42, 42, 42, 42, 42]
37 Λίςτεσ
38 Άδεια λίςτα και None Άδεια λίςτα: [] None: Χρθςιμοποιείται όταν κζλουμε μία λίςτα π.χ. με 10 ςτοιχεία αλλά δεν ζχουμε ακόμα ανακζςει τιμζσ: >>>sequence = [None] * 10 >>>sequence [None, None, None, None, None, None, None, None, None, None]
39 Ιδιότθτα του μζλουσ >>>permissions= rw >>> w in permissions True >>> x in permissions False Οι True και False είναι Boolean τιμζσ: True: Αλθκζσ False: Ψευδζσ
40 Ιδιότθτα του μζλουσ >>> users = * χριςτθσ1', χριςτθσ3', χρθςτθσ9'] >>> input('enter your user name: ') in users Enter your user name: mlh True >>> subject = '$$$!!! $$$' >>> '$$$' in subject True
41 παράκεςθ >>> x [1, 5, 4, 7, 8, 9] >>> y [7, 8, 9] >>> x+y [1, 5, 4, 7, 8, 9, 7, 8, 9] >>> a=x+y >>> a [1, 5, 4, 7, 8, 9, 7, 8, 9] >>> x [1, 5, 4, 7, 8, 9] >>> y [7, 8, 9]
42 θ ςυνάρτθςθ list δθμιουργία λίςτασ >>> list ('Hello') ['H', 'e', 'l', 'l', 'o'] >>> >>> x=list('hello') >>> x ['H', 'e', 'l', 'l', 'o'] >>>
43 min, max, len >>> x=[3,5,2,8,7] >>> min(x) 2 >>> max(x) 8 >>> len(x) 5 >>>
44 τροποποίθςθ ςτοιχείων λίςτασ >>> x=[1,2,3] >>> x [1, 2, 3] >>> x[2]=-1 >>> x [1, 2, -1] >>>
45 διαγραφι ςτοιχείων λίςτασ >>> x=[1,2,3] >>> del x[1] >>> x [1, 3] >>> del x[0] >>> del x[0] >>> x [] >>>
46 αντικατάςταςθ μζρουσ λίςτασ >>> list = [1,2,3,4,5,6] >>> list[3:]=[7,8,9] >>> list [1, 2, 3, 7, 8, 9] >>> list[1:2]=[10,11,12,13] >>> list [1, 10, 11, 12, 13, 3, 7, 8, 9]
47 αντικατάςταςθ μζρουσ λίςτασ >>> list[1:1]=[20,21,22] >>> list [1, 20, 21, 22, 10, 11, 12, 13, 3, 7, 8, 9] >>> list[4:]=[] >>> list [1, 20, 21, 22] >>>
48 append >>> lst = [1, 2, 3] >>> lst.append(4) >>> lst [1, 2, 3, 4]
49 count >>> ['to', 'be', 'or', 'not', 'to', 'be'].count('to') 2 >>> x = [[1, 2], 1, 1, [2, 1, [1, 2]]] >>> x.count(1) 2 >>> x.count([1, 2]) 1
50 index >>> a = [1, 5, 4, 7, 8, 9, 7, 8, 9,] >>> a.index(7) 3 >>> a.index(9) 5
51 insert >>> a = [1, 5, 4, 7, 8, 9, 7, 8, 9, -1] >>> >>> a.insert(2,10) >>> a [1, 5, 10, 4, 7, 8, 9, 7, 8, 9, -1]
52 pop >>> a = [1, 5, 10, 4, 7, 8, 9, 7, 8, 9, -1] >>> a.pop() -1 >>> a [1, 5, 10, 4, 7, 8, 9, 7, 8, 9] >>> a.pop(0) 1 >>> a [5, 10, 4, 7, 8, 9, 7, 8, 9] >>> a.pop(2) 4 >>> a [5, 10, 7, 8, 9, 7, 8, 9]
53 remove >>> a [5, 10, 7, 8, 9, 7, 8, 9] >>> >>> a.remove(9) >>> a [5, 10, 7, 8, 7, 8, 9]
54 reverse >>> x = [1, 2, 3] >>> x.reverse() >>> x [3, 2, 1] >>> x = [1, 2, 3] >>> list(reversed(x)) [3, 2, 1] >>> x [1, 2, 3]
55 extend >>> a = [1, 2, 3] >>> b = [4, 5, 6] >>> a.extend(b) >>> a [1, 2, 3, 4, 5, 6] >>> a = [1, 2, 3] >>> b = [4, 5, 6] >>> a + b [1, 2, 3, 4, 5, 6] >>> a [1, 2, 3]
56 sort >>> x = [4, 6, 2, 1, 7, 9] >>> x.sort() >>> x [1, 2, 4, 6, 7, 9] >>> x = [4, 6, 2, 1, 7, 9] >>> y = x.sort() >>> print (y) None
57 sort >>> x = [4, 6, 2, 1, 7, 9] >>> y = x[:] >>> y.sort() >>> x [4, 6, 2, 1, 7, 9] >>> y [1, 2, 4, 6, 7, 9]
58 sort >>> y = x >>> y.sort() >>> x [1, 2, 4, 6, 7, 9] >>> y [1, 2, 4, 6, 7, 9]
59 sort >>> x = [4, 6, 2, 1, 7, 9] >>> y = sorted(x) >>> x [4, 6, 2, 1, 7, 9] >>> y [1, 2, 4, 6, 7, 9]
60 Πλειάδεσ
61 Πλειάδεσ Οι πλειάδεσ δθμιουργοφνται και δεν τροποποιοφνται ςτθ ςυνζχεια >>> 1, 2, 3 (1, 2, 3) >>> () ()
62 Δθμιουργία από ςυνάρτθςθ >>> tuple([1, 2, 3]) (1, 2, 3) >>> tuple('abc') ('a', 'b', 'c') >>> tuple((1, 2, 3)) (1, 2, 3)
63 Λειτουργίεσ ςε μία πλειάδα >>> x = 1, 2, 3 >>> x[1] 2 >>> x[0:2] (1, 2)
64 Χρθςιμότθτα? Θα μποροφςαμε να χρθςιμοποιοφςαμε και λίςτεσ αντί τισ πλειάδεσ Κάποιεσ λειτουργίεσ όμωσ που κα δοφμε αργότερα τισ χρθςιμοποιοφν
65 Λεξικά
66 Λεξικά χρθςιμοποιοφν κλειδιά και όχι απλοφσ δείκτεσ θ αναηιτθςθ βαςίηεται ςτα κλειδιά, τα οποία είναι πλειάδεσ π.χ. phonebook =, Αλίκθ': '2341', Μπζτυ': '9102', Σεςίλ': '3258'}
67 Συνάρτθςθ dict >>> items = *('name', Γιϊργοσ'), ('age', 42)] >>> d = dict(items) >>> d,'age': 42, 'name': Γιϊργοσ'} >>> d['name'] Γιϊργοσ ι d = dict(name= Γιϊργοσ', age=42) >>> d,'age': 42, 'name': Γιϊργοσ'}
68 Βαςικζσ Λειτουργίεσ >>> x = [] >>> x*42+ = τεςτ' Traceback (most recent call last): File "<stdin>", line 1, in? IndexError: list assignment index out of range >>> x = {} >>> x*42+ = τεςτ' >>> x,42: τεςτ'}
69 clear >>> d = {} >>> d*'name'+ = Γιϊργοσ' >>> d['age'] = 42 >>> d,'age': 42, 'name': Γιϊργοσ'} >>> returned_value = d.clear() >>> d {} >>> print (returned_value) None
70 fromkeys >>> {}.fromkeys(['name', 'age']) {'age': None, 'name': None} >>> dict.fromkeys(['name', 'age']) {'age': None, 'name': None} >>> dict.fromkeys(['name', 'age'], '(unknown)') {'age': '(unknown)', 'name': '(unknown)'}
71 get >>> d = {} >>> print (d['name']) Traceback (most recent call last): File "<stdin>", line 1, in? KeyError: 'name >>> d.get('name', 'N/A') N/A >>> d['name'] = 'Eric' >>> d.get('name') 'Eric' >>> print (d.get('name')) None
72 has_key >>> d = {} >>> d.has_key('name') 0 >>> d['name'] = 'Eric' >>> d.has_key('name') 1
73 items >>> d = {'title': 'Python Web Site', 'url': ' 'spam': 0} >>> d.items() [('url', ' ('spam', 0), ('title', 'Python Web Site')]
74 pop >>> d = {'x': 1, 'y': 2} >>> d.pop('x') 1 >>> d {'y': 2} >>> d = {'x': 1, 'y': 2} >>> d.pop('x') 1 >>> d {'y': 2}
75 popitem >>> d {'url': ' 'spam': 0, 'title': 'Python Web Site'} >>> d.popitem() ('url', ' τυχαίο >>> d {'spam': 0, 'title': 'Python Web Site'}
76 update >>> d = { 'title': 'Python Web Site', 'url': ' 'changed': 'Mar 14 22:09:15 MET 2005' } >>> x = {'title': 'Python Language Website'} >>> d.update(x) >>> d {'url': ' 'changed': 'Mar 14 22:09:15 MET 2005, 'title': 'Python Language Website'}
77 Δομζσ Ζλζγχου
78 Μπλοκ κϊδικα Ζνα μπλοκ κϊδικα είναι μία ομάδα εντολϊν θ οποία κα εκτελεςτεί αν μία ςυνκικθ είναι αλθκισ ι κα εκτελεςτεί πολλζσ φορζσ (βρόχοσ) Στθν Python, το μπλοκ δθμιουργείται γράφοντασ το αντίςτοιχο μζροσ του κϊδικα ςε εςοχι (βάηοντασ διαςτιματα μπροςτά). Προτείνονται τζςςερα διαςτιματα.
79 Μπλοκ κϊδικα this is a line this is another line: this is another block continuing the same block the last line of this block phew, there we escaped the inner block Η αρχι του μπλοκ ορίηεται με «:»
80 Συνκικεσ Είχαμε μιλιςει για Boolean τιμζσ. True, False Στθν Python, οι παρακάτω τιμζσ κεωροφνται ιςοδφναμεσ με False: False None 0 "" () [] {} Οποιαδιποτε άλλθ τιμι κεωρείται ιςοδφναμθ με True.
81 True και False Βαςικά, True ςθμαίνει 1 και False ςθμαίνει 0. >>> True True >>> False False >>> True == 1 True >>> False == 0 True >>> True + False
82 Τφποσ bool Οι τιμζσ True και False ανικουν ςτον τφπο bool. bool('i think, therefore I am') True >>> bool(42) True >>> bool('') False >>> bool(0) False
83 Η εντολι if name = input('what is your name? ') if name.endswith('gumby'): print('hello, Mr. Gumby )
84 elif και else num = eval(input('enter a number: ')) if num > 0: print('the number is positive') elif num < 0: print('the number is negative') else: print('the number is zero')
85 Φωλιαςμζνα μπλοκ name = input('what is your name? ') if name.endswith('gumby'): if name.startswith('mr.'): print('hello, Mr. Gumby') elif name.startswith('mrs.'): print('hello, Mrs. Gumby') else: print('hello, Gumby') else: print('hello, stranger')
86 Τελεςτζσ ςφγκριςθσ x == y το x ιςοφται με το y. x < y το x είναι μικρότερο από το y. x > y το x είναι μεγαλφτερο από το y. x >= y το x είναι μεγαλφτερο ι ίςο από το y. x <= y το x είναι μικρότερο ι ίςο από το y. x!= y το x είναι διάφορο του y. x is y x και y είναι το ίδιο αντικείμενο. x is not y x και y είναι διαφορετικά αντικείμενα. x in y το x είναι μζλοσ τθσ ακολουκίασ y. x not in y το x δεν είναι μζλοσ τθσ ακολουκίασ y.
87 Τελεςτζσ ςφγκριςθσ >>> "foo" == "foo" True >>> "foo" == "bar" False >>> "foo" = "foo" SyntaxError: can't assign to literal
88 Ο τελεςτισ is (τελεςτισ ταυτότθτασ) >>> x = y = [1, 2, 3] >>> z = [1, 2, 3] >>> x == y True >>> x == z True >>> x is y True >>> x is z False
89 Ο τελεςτισ in name = input('what is your name? ') if 's' in name: print('your name contains the letter "s". ) else: print('your name does not contain the letter "s". )
90 Σφγκριςθ αλφαρικμθτικϊν και ακολουκιϊν >>> "alpha" < "beta" True [1, 2] < [2, 1] True
91 Boolean τελεςτζσ number = int(input( Δϊςε μου αρικμό ανάμεςα ςτο 1 και το 10: ')) if number <= 10: if number >= 1: print Σωςτά!' else: print Λάκοσ!' else: print Λάκοσ!'
92 Boolean τελεςτζσ Καλφτερα: number = int(input(' Δϊςε μου αρικμό ανάμεςα ςτο 1 και το 10 : ')) if number <= 10 and number >= 1: print Σωςτά!' else: print Λάκοσ! Ακόμα καλφτερα: if 1<=number<=10:
93 Boolean τελεςτζσ and, or, not όςο πολφπλοκα κζλουμε if ((cash > price) or customer_has_good_credit) and not out_of_stock: give_goods()
94 Ο βρόχοσ while x = 1 while x <= 100: print(x) x += 1 name = '' while not name: name = input('please enter your name: ') print('hello, %s!' % name)
95 Ο βρόχοσ for words = ['this', 'is', 'an', 'ex', 'parrot'] for word in words: print(word) numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] for number in numbers: print(number)
96 range for number in range(1,101): print(number) >>>list(range(0,10)) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] Το δεφτερο όριο δεν ςυμπεριλαμβάνεται.
97 Επαναλιψεισ ςε λεξικά d = {'x': 1, 'y': 2, 'z': 3} for key in d: print(key, 'corresponds to', d[key]) Εναλλακτικά: d = {'x': 1, 'y': 2, 'z': 3} for key, value in d.items(): print(key, 'corresponds to', value)
98 Παράλλθλεσ επαναλιψεισ names = * anne', 'beth', 'george', 'damon'] ages = [12, 45, 32, 102] for i in range(len(names)): print(names[i], 'is', ages[i], 'years old')
99 Η ςυνάρτθςθ zip >>>list(zip(names,ages)) [('anne', 12), ('beth', 45), ('george', 32), ('damon', 102)] >>>list(zip(range(5), range( ))) [(0, 0), (1, 1), (2, 2), (3, 3), (4, 4)]
100 Παράλλθλεσ επαναλιψεισ με zip names = ['anne', 'beth', 'george', 'damon'] ages = [12, 45, 32, 102] for name, age in zip(names, ages): print(name, 'is', age, 'years old')
101 Αντικατάςταςθ αλφαρικμθτικοφ for string in strings: if 'xxx' in string: index = strings.index(string) strings*index+ = '*censored+ Εναλλακτικά: index = 0 for string in strings: if 'xxx' in string: strings[index] = '[censored]' index += 1
102 reversed και sorted >>> sorted([4, 3, 6, 8, 3]) [3, 3, 4, 6, 8] >>> sorted('hello, world!') [' ', '!', ',', 'H', 'd', 'e', 'l', 'l', 'l', 'o', 'o', 'r', 'w'] >>> list(reversed('hello, world!')) ['!', 'd', 'l', 'r', 'o', 'w', ' ', ',', 'o', 'l', 'l', 'e', 'H'] >>> ''.join(reversed('hello, world!')) '!dlrow,olleh'
103 Η εντολι break Θζλω να βρω το μεγαλφτερο τζλειο τετράγωνο μικρότερο του 100. from math import sqrt for n in range(99, 0, -1): root = sqrt(n) if root == int(root): print(n) break Η break μασ βγάηει ζξω από το βρόχο
104 range με βιμα >>>list(range(99, 0, -1)) [99, 98, 97, 96, 95, 94, 93, 92, 91, 90, 89, 88, 87, 86, 85, 84, 83, 82, 81, 80, 79, 78, 77, 76, 75, 74, 73, 72, 71, 70, 69, 68, 67, 66, 65, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1] >>>list(range(0,10,2)) [0, 2, 4, 6, 8]
105 Ο ιδιωματιςμόσ while True/break word = 'dummy' while word: word = input('please enter a word: ') # do something with the word: print('the word was ' + word) Χρειαηόμαςτε τθν αρχικι τιμι ςτθ word.
106 O ιδιωματιςμόσ while True/break Εναλλακτικά: word = input('please enter a word: ') while word: # do something with the word: print('the word was ' + word) word = input('please enter a word: ')
107 O ιδιωματιςμόσ while True/break Με χριςθ του while True/break: while True: word = input('please enter a word: ') if not word: break # do something with the word: print('the word was ' + word)
108 Χριςθ Boolean ςθμαίασ broke_out = False for x in seq: do_something(x) if condition(x): broke_out = True break do_something_else(x) if not broke_out: print "I didn't break out!"
109 Χριςθ else ςτθ for from math import sqrt for n in range(99, 81, -1): root = sqrt(n) if root == int(root): print(n) break else: print("didn't find it!")
110 Περιςςότερα για λίςτεσ >>> [x*x for x in range(10)] [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] >>> [x*x for x in range(10) if x % 3 == 0] [0, 9, 36, 81] >>> [(x, y) for x in range(3) for y in range(3)] [(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
111 Περιςςότερα για λίςτεσ >>> girls = ['alice', 'bernice', 'clarice'] >>> boys = ['chris', 'arnold', 'bob'] >>> [b+'+'+g for b in boys for g in girls if b[0] == g[0]] ['chris+clarice', 'arnold+alice', 'bob+bernice']
112 Η εντολι pass Δεν κάνει τίποτα! if name == 'Ralph': print 'Welcome!' elif name == 'Enid': # Not finished yet... pass elif name == 'Bill Gates': print 'Access Denied'
113 Παραδείγματα
114 Φψωςθ ςε δφναμθ x = int(input('dose ti vasi: ')) y = int(input('dose ti dynami: ')) value = 1 for i in range(0, y): value *= x print('%d eis tin %d = %d' % (x, y, value))
115 Παραγοντικό n! n
116 Παραγοντικό ενόσ αρικμοφ x = int(input('dose mou ton arithmo: ')) y = 1 for i in range(1,x+1): y *= i print('to paragontiko tou %d einai %d' % (x,y))
117 Υπολογιςμόσ ψθφίων ακζραιου αρικμοφ Παράδειγμα: 235=2*100+3*10+5 Πρϊτο ψθφίο: 235%10=5 235//10=23 Δεφτερο ψθφίο: 23%10=3 23//10=2 Τρίτο ψθφίο: 2%10=2 2//10=0
118 Υπολογιςμόσ ακροίςματοσ ψθφίων ακζραιου αρικμοφ n = int(input('dose mou ton arithmo: ')) dsum = 0 while n>0: dsum += n%10 n//=10 print('to athroisma ton psifion tou arithmou einai %d' % dsum)
119 Πίνακεσ
120 Πίνακεσ Μποροφμε να χρθςιμοποιιςουμε λίςτεσ ωσ πίνακεσ. Μονοδιάςτατοσ πίνακασ: Α=*1, 2, 3, 4, 5+ Διδιάςτατοσ πίνακασ: Β=**1, 2, 3+, *4, 5, 6+, *7, 8, 9++ Κάκε γραμμι του πίνακα είναι μία λίςτα.
121 Αρχικοποίθςθ πινάκων Μονοδιάςτατοσ πίνακασ Ν=5 Α=*0+*Ν Εναλλακτικά: Α=*0 for i in range(n)] Αντί για 0 μποροφμε να βάλουμε και None.
122 Αρχικοποίθςθ πινάκων Διςδιάςτατοσ πίνακασ Ν=3 pinakas=[[0 for i in range(n)] for i in range(n)] pinakas 0 1 pinakas[0][0] pinakas[0][1] pinakas[0][2] Προσοχή: Είναι pinakas[i][j] και όχι pinakas[i, j] pinakas[1][0] pinakas[1][1] pinakas[1][2] 2 pinakas[2][0] pinakas[2][1] pinakas[2][2] 0 1 2
123 Πρόςκεςθ πινάκων N = 3 A = [[0.0 for j in range(n)] for i in range(n)] B = [[0.0 for j in range(n)] for i in range(n)] C = [[0.0 for j in range(n)] for i in range(n)] for i in range(n): for j in range(n): A[i][j] = float(input('a[%d][%d]: ' % (i, j))) for i in range(n): for j in range(n): B[i][j] = float(input('b[%d][%d]: ' % (i, j)))
124 Πρόςκεςθ πινάκων (ςυνζχεια) for i in range(n): for j in range(n): C[i][j] = A[i][j] + B[i][j] for i in range(n): for j in range(n): print('c[%d][%d]:%7.2f ' % (i, j, C[i][j]), end = '') print('')
125 Πολλαπλαςιαςμόσ πινάκων NxN C A B C[ i, j] N 1 A[ i, k] B[ k, j] k 0
126 Πολλαπλαςιαςμόσ πινάκων N = 3 A = [[0.0 for j in range(n)] for i in range(n)] B = [[0.0 for j in range(n)] for i in range(n)] C = [[0.0 for j in range(n)] for i in range(n)] for i in range(n): for j in range(n): A[i][j] = float(input('a[%d][%d]: ' % (i, j))) for i in range(n): for j in range(n): B[i][j] = float(input('b[%d][%d]: ' % (i, j)))
127 Πολλαπλαςιαςμόσ πινάκων (ςυνζχεια) for i in range(n): for j in range(n): thiselement = 0.0 for k in range(n): thiselement += A[i][k]*B[k][j] C[i][j] = thiselement for i in range(n): for j in range(n): print('c[%d][%d]:%7.2f ' % (i, j, C[i][j]), end = '') print(' )
128 Ανάςτροφοσ πίνακα N = 3 A = [[0.0 for j in range(n)] for i in range(n)] C = [[0.0 for j in range(n)] for i in range(n)] for i in range(n): for j in range(n): A[i][j] = float(input('a[%d][%d]: ' % (i, j))) for i in range(n): for j in range(n): C[i][j] = A[j][i]
129 Ανάςτροφοσ πίνακα (ςυνζχεια) for i in range(n): for j in range(n): print('c[%d][%d]:%7.2f ' % (i, j, C[i][j]), end = '') print('')
130 Συναρτιςεισ
131 Hello world >>> def helloworld(): print('hello World') >>> helloworld() Hello World >>>
132 Hello world >>> def hello(name): return 'Hello, '+name+'!' >>> hello ('world') 'Hello, world!' >>> hello ('George') 'Hello, George!' >>>
133 Fibonacci numbers fib(0) = 1 fib(1) = 1 fib(n)=fib(n-1)+fib(n-2)
134 Fibonacci numbers >>> def fibs(num): result = [0, 1] for i in range(num-2): result.append(result[-2] + result[-1]) return result >>> fibs(10) [0, 1, 1, 2, 3, 5, 8, 13, 21, 34] >>>
135 Τεκμθρίωςθ >>> def hello(name): 'prints hello, a comma and a name following them' return 'Hello, '+name+'!' >>> hello('george') 'Hello, George!' >>> hello. doc 'prints hello, a comma and a name following them' >>>
136 Τεκμθρίωςθ >>> from math import sqrt >>> help(sqrt) Help on built-in function sqrt in module math: sqrt(...) sqrt(x) Return the square root of x.
137 Κάτι ςαν ςυναρτιςεισ >>> def OK(): print ('OK'); return print ('????'); >>> OK() OK >>> x=ok() OK >>> x >>>
138 Κάτι ςαν ςυναρτιςεισ >>> def OK(): print ('OK'); return print ('????'); >>> OK() OK???? >>> x=ok() OK???? >>> x >>>
139 Παράμετροι def hello(name): return 'Hello, '+name+'!' >>> x='george' >>> hello(x) 'Hello, George!' >>> x 'George'
140 Παράμετροι def hello(name): name='123' return 'Hello, '+name+'!' >>> x='george' >>> hello(x) 'Hello, 123!' >>> x 'George' >>>
141 Παράμετροι >>> def change(n): n[0] = 'Mr. Gumby' >>> names = ['Mrs. Entity', 'Mrs. Thing'] >>> change(names) >>> names ['Mr. Gumby', 'Mrs. Thing']
142 Παράμετροι def hello_1(greeting, name): print '%s, %s!' % (greeting, name) def hello_2(name, greeting): print '%s, %s!' % (name, greeting) >>> hello_1('hello', 'world') Hello, world! >>> hello_2('hello', 'world') Hello, world!
143 Παράμετροι >>> hello_1(greeting='hello', name='world') Hello, world! >>> hello_1(name='world', greeting='hello') Hello, world! The names do, however (as you may have gathered): >>> hello_2(greeting='hello', name='world') world, Hello!
144 Παράμετροι Πιο ευανάγνωςτοσ κϊδικασ >>> store('mr. Brainsample', 10, 20, 13, 5) >>> store(patient='mr. Brainsample', hour=10, minute=20, day=13, month=5)
145 Παράμετροι def hello_3(greeting='hello', name='world'): print '%s, %s!' % (greeting, name) >>> hello_3() Hello, world! >>> hello_3('greetings') Greetings, world! >>> hello_3('greetings', 'universe') Greetings, universe! >>> hello_3(name='gumby') Hello, Gumby!
146 Παράμετροι >>> def hello(greetings='hello',name='world'): print(greetings+', '+name) >>> hello() Hello, world >>> hello(greetings='hi') Hi, world >>> hello(name='mike') Hello, Mike
147 Παράμετροι >>> hello(name='mike',greetings='hi') Hi, Mike >>> hello('hi','mike') Hi, Mike >>> hello('mike','hi') Mike, Hi >>> hello('hi') Hi, world >>> hello('mike') Mike, world
148 Μεταβλθτόσ αρικμόσ παραμζτρων def print_params(*params): print (params) >>> print_params('testing') ('Testing',) >>> print_params(1, 2, 3) (1, 2, 3)
149 Μεταβλθτόσ αρικμόσ παραμζτρων def print_params_2(title, *params): print (title) print (params) print_params_2('params:', 1, 2, 3) Params: (1, 2, 3) >>> print_params_2('nothing:') Nothing: ()
150 Μεταβλθτόσ αρικμόσ παραμζτρων def print_params_3(**params): print (params) >>> print_params_3(x=1, y=2, z=3) {'z': 3, 'x': 1, 'y': 2}
151 Μεταβλθτόσ αρικμόσ παραμζτρων def print_params_4(x, y, z=3, *pospar, **keypar): print (x, y, z) print (pospar) print (keypar) >>> print_params_4(1, 2, 3, 5, 6, 7, foo=1, bar=2) (5, 6, 7) {'foo': 1, 'bar': 2} >>> print_params_4(1, 2) () {}
152 Κατανομι ςτισ παραμζτρουσ def add(x, y): return x + y params = (1, 2) >>> add(*params) 3
153 Κατανομι ςτισ παραμζτρουσ >>> params = {'name': 'Sir Robin', 'greeting': 'Well met'} >>> hello_3(**params) Well met, Sir Robin!
154 Κατανομι ςτισ παραμζτρουσ >>> def with_stars(**kwds): print (kwds*'name'+, 'is', kwds*'age'+, 'years old ) >>> def without_stars(kwds): print (kwds*'name'+, 'is', kwds*'age'+, 'years old ) >>> args = {'name': 'Mr. Gumby', 'age': 42} >>> with_stars(**args) Mr. Gumby is 42 years old >>> without_stars(args) Mr. Gumby is 42 years old
155 Παραδείγματα def story(**kwds): return 'Once upon a time, there was a ' \ '%(job)s called %(name)s.' % kwds >>> print story(job='king', name='gumby') Once upon a time, there was a king called Gumby. >>> print story(name='sir Robin', job='brave knight') Once upon a time, there was a brave knight called Sir Robin.
156 Παραδείγματα def story(**kwds): return 'Once upon a time, there was a ' \ '%(job)s called %(name)s.' % kwds >>> params = {'job': 'language', 'name': 'Python'} >>> print story(**params) Once upon a time, there was a language called Python. >>> del params['job'] >>> print story(job='stroke of genius', **params) Once upon a time, there was a stroke of genius called Python.
157 Παραδείγματα def power(x, y, *others): if others: print ('Received redundant parameters:', others) return pow(x, y) >>> power(2,3) 8 >>> power(3,2) 9 >>> power(y=3,x=2) 8
158 Παραδείγματα def power(x, y, *others): if others: print ('Received redundant parameters:', others) return pow(x, y) >>> params = (5,) * 2 >>> power(*params) 3125 >>> power(3, 3, 'Hello, world') Received redundant parameters: ('Hello, world',) 27
159 Εμβζλεια μεταβλθτϊν >>> def foo(): x = >>> x = 1 >>> foo() >>> x 1
160 Εμβζλεια μεταβλθτϊν >>> def output(x): print x... >>> x = 1 >>> y = 2 >>> output(y) 2
161 Εμβζλεια μεταβλθτϊν >>> def combine(parameter): print (parameter + external)... >>> external = 'berry' >>> combine('shrub') Shrubberry
162 Εμβζλεια μεταβλθτϊν >>> def combine(parameter) print (parameter + globals()['parameter'])... >>> parameter = 'berry' >>> combine('shrub') Shrubberry
163 Εμβζλεια μεταβλθτϊν >>> x = 1 >>> def change_global(): global x x = x + 1 >>> change_global() >>> x 2
164 Ταξινόμθςθ
165 Ταξινόμθςθ Η Python ζχει ενςωματωμζνθ μζκοδο για ταξινόμθςθ λιςτϊν: >>> seq = [34, 67, 8, 123, 4, 100, 95] >>>seq.sort() >>>seq [4, 8, 34, 67, 95, 100, 123]
166 Η ςυνάρτθςθ sorted >>>sorted([4, 3, 6, 8, 3]) [3, 3, 4, 6, 8]
167 Ταξινόμθςθ με επιλογι (selection sort) def SortIntegerArray(array): n=len(array) for lh in range(0,n): rh=findsmallestinteger(array, lh, n-1) SwapIntegerElements(array, lh, rh) def FindSmallestInteger(array, low, high): spos=low for i in range(low, high+1): if array[i]<array[spos]: spos=i return(spos)
168 Ταξινόμθςθ με επιλογι (selection sort) def SwapIntegerElements(array, p1, p2): array[p1], array[p2] = array[p2], array[p1]
169 bubblesort def bubblesort(numbers): array_size=len(numbers) for i in range(array_size-1, -1, -1): for j in range(1,i+1): if numbers[j-1]>numbers[j]: numbers[j-1], numbers[j]=numbers[j], numbers[j-1]
170 Insertionsort def InsertionSort(numbers): array_size=len(numbers) for i in range(1, array_size): index=numbers[i] j=i while (j>0) and numbers[j-1]>index: numbers[j]=numbers[j-1] j=j-1 numbers[j]=index
171 Αναηιτθςθ ςτθν Python >>>x=[232, 2, 21, 1, 2] >>>21 in x True >>>3 in x False Δεν μου λζει ςε ποια κζςθ τθσ λίςτασ βρίςκεται το ςτοιχείο που ψάχνω.
172 Η μζκοδοσ index >>>[2, 3, 4, 2, 1].index(2) 0 >>>[2, 3, 4, 2, 1].index(5) Traceback (most recent call last): File "<pyshell#24>", line 1, in <module> [2, 3, 4, 2, 1].index(5) ValueError: 5 is not in list
173 Γραμμικι Αναηιτθςθ (Linear Search) Ψάχνουμε τθν κζςθ μιασ τιμισ κλειδί Γραμμικι Αναηιτθςθ (Linear search) Απλοφςτερθ δυνατι Σφγκρινε ςειριακά κάκε ςτοιχείο του πίνακα με τθν τιμι-κλειδί Χριςιμο για μικροφσ και ΜΗ ταξινομθμζνουσ πίνακεσ
174 linearsearch def linearsearch(a, key): array_size=len(a) for i in range(array_size): if key==a[i]: return i return -1
175 Δυαδικι Αναηιτθςθ (Binary Search) Δυαδικι Αναηιτθςθ Σε ταξινομθμζνουσ πίνακεσ μόνο Συγκρίνει το middle ςτοιχείο με το ηθτοφμενο key Αν είναι ίςα βρζκθκε Αν key < middle, ψάχνει ςτο 1ο μιςό του πίνακα Αν key > middle, ψάχνει ςτο 2ο μιςό του πίνακα Επανάλθψθ Πολφ γριγορθ Στθ χειρότερθ περίπτωςθ n βιματα, για 2 n > αρικμό ςτοιχείων Πίνακασ 30 ςτοιχείων χρειάηεται το πολφ 5 βιματα 2 5 > 30 δθλαδι 5 βιματα
176 binarysearch def binarysearch(a, key, low, high): while low<=high: middle=(low+high)//2 if key==a[middle]: return middle elif key<middle: high=middle-1 else: low=middle+1 return -1
Γιώργος Μανής Επίκουρος Καθηγητής Τμήματος Μηχανικών Η/Υ και Πληροφορικής Mάρτιος 2015
Γιώργος Μανής Επίκουρος Καθηγητής Τμήματος Μηχανικών Η/Υ και Πληροφορικής Mάρτιος 2015 Python Η Python δημιουργήθηκε το 1990 Ο κύριος στόχος της είναι η αναγνωσιμότητα του κώδικά της και η ευκολία χρήσης
Γιώργος Μανής Επίκουρος Καθηγητής Τμήματος Μηχανικών Η/Υ και Πληροφορικής 29 Οκτωβρίου 2014
Γιώργος Μανής Επίκουρος Καθηγητής Τμήματος Μηχανικών Η/Υ και Πληροφορικής 29 Οκτωβρίου 2014 Python Η Python δημιουργήθηκε το 1990 Ο κύριος στόχος της είναι η αναγνωσιμότητα του κώδικά της και η ευκολία
Γιώργος Μανής Επίκουρος Καθηγητής Τμήματος Μηχανικών Η/Υ και Πληροφορικής 6 Οκτωβρίου 2014
Γιώργος Μανής Επίκουρος Καθηγητής Τμήματος Μηχανικών Η/Υ και Πληροφορικής 6 Οκτωβρίου 2014 Δομές Δεδομένων της Python strings πλειάδες λίστες λεξικά πίνακες? Strings >>> Hello, world! Hello, world! s=
Γιώργος Μανής Επίκουρος Καθηγητής Τμήματος Μηχανικών Η/Υ και Πληροφορικής 3 Μαϊου 2015
Γιώργος Μανής Επίκουρος Καθηγητής Τμήματος Μηχανικών Η/Υ και Πληροφορικής 3 Μαϊου 2015 Δομές Δεδομένων της Python αλφαριθμητικά πλειάδες λίστες λεξικά πίνακες? Strings >>> Hello, world! Hello, world!
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Έλεγχος Ροής Προγράµµατος Χειµερινό Εξάµηνο 2014
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Έλεγχος Ροής Προγράµµατος Χειµερινό Εξάµηνο 2014 Ροή προγράµµατος n n Μέχρι τώρα έχουµε δει προγράµµατα απλής ροής Οι εντολές εκτελούνται η µία µετά την άλλη σύµφωνα
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Λεξικά Χειμερινό Εξάμηνο 2016
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Λεξικά Χειμερινό Εξάμηνο 2016 Γιατί Λεξικά; Στις ακολουθίες (π.χ. λίστες, αλφαριθμητικά) μπορούμε να αναφερόμαστε σε ένα στοιχείο με τον αριθμητικό δείκτη του (π.χ.
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Λεξικά Χειµερινό Εξάµηνο 2014
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Λεξικά Χειµερινό Εξάµηνο 2014 Γιατί Λεξικά; Στις ακολουθίες (π.χ. λίστες, αλφαριθµητικά) µπορούµε να αναφερόµαστε σε ένα στοιχείο µε τον αριθµητικό δείκτη του (π.χ.
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Συναρτήσεις Χειµερινό Εξάµηνο 2014
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Συναρτήσεις Χειµερινό Εξάµηνο 2014 Δόµηση προγράµµατος Μέχρι τώρα έχουµε δει πως να χρησιµοποιούµε έτοιµες συναρτήσεις και µεθόδους στα προγράµµατά µας (π.χ. len(),
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Συναρτήσεις Χειμερινό Εξάμηνο 2016
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Συναρτήσεις Χειμερινό Εξάμηνο 2016 Δόμηση προγράμματος Μέχρι τώρα έχουμε δει πως να χρησιμοποιούμε έτοιμες συναρτήσεις και μεθόδους στα προγράμματά μας (π.χ. len(),
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Λίστες και Πλειάδες Χειµερινό Εξάµηνο 2014
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Λίστες και Πλειάδες Χειµερινό Εξάµηνο 2014 Δοµές δεδοµένων Μια δοµή δεδοµένων είναι µια δοµηµένη (οργανωµένη) συλλογή στοιχείων (π.χ., ψηφίων, χαρακτήρων, αριθµών,
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Ακολουθίες: Λίστες και Πλειάδες Χειμερινό Εξάμηνο 2016
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Ακολουθίες: Λίστες και Πλειάδες Χειμερινό Εξάμηνο 2016 Δομές δεδομένων Μια δομή δεδομένων είναι μια δομημένη (οργανωμένη) συλλογή στοιχείων (π.χ., ψηφίων, χαρακτήρων,
Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8
Δείκτεσ Διαχείριςθ Μνιμθσ Βαγγζλθσ Οικονόμου Διάλεξθ 8 Δείκτεσ Κάκε μεταβλθτι ςχετίηεται με μία κζςθ ςτθν κφρια μνιμθ του υπολογιςτι. Κάκε κζςθ ςτθ μνιμθ ζχει τθ δικι τθσ ξεχωριςτι διεφκυνςθ. Με άμεςθ
ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ. Κεφάλαιο 8 Η γλϊςςα Pascal
ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ Κεφάλαιο 8 Η γλϊςςα Pascal Παράγραφοσ 8.2 Βαςικοί τφποι δεδομζνων Σα δεδομζνα ενόσ προγράμματοσ μπορεί να: είναι αποκθκευμζνα εςωτερικά ςτθν μνιμθ είναι αποκθκευμζνα εξωτερικά
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Έλεγχος Ροής Προγράμματος
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Έλεγχος Ροής Προγράμματος Ροή προγράμματος Μέχρι τώρα έχουμε δει προγράμματα απλής ροής Οι εντολές εκτελούνται η μία μετά την άλλη σύμφωνα με την ακολουθία γραμμών
Εισαγωγή στον Προγ/μό Υπολογιστών
Εισαγωγή στον Προγ/μό Υπολογιστών Διάλεξη 1 Εκφράσεις, κλητικές εκφράσεις, ονόματα Περιεχόμενα Εκφράσεις (expressions) Τελεστές (operators) της Python Κλητικές εκφράσεις (call expressions) Ονόματα (names)
Θεςιακά ςυςτιματα αρίκμθςθσ
Θεςιακά ςυςτιματα αρίκμθςθσ Δρ. Χρήστος Ηλιούδης αρικμθτικό ςφςτθμα αρίκμθςθσ (Number System) Αξία (value) παράςταςθ Οι αξίεσ (π.χ. το βάροσ μιασ ποςότθτασ μιλων) μποροφν να παραςτακοφν με πολλοφσ τρόπουσ
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αναζήτηση και Ταξινόμηση Χειμερινό Εξάμηνο 2016
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Αναζήτηση και Ταξινόμηση Χειμερινό Εξάμηνο 2016 Αναζήτηση και Ταξινόμηση Βασικές λειτουργίες σε προγράμματα Αναζήτηση (searching): Βρες ένα ζητούμενο στοιχείο σε μια
Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο του Άβακα
Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο του Άβακα Αυτζσ οι οδθγίεσ ζχουν ςτόχο λοιπόν να βοθκιςουν τουσ εκπαιδευτικοφσ να καταςκευάςουν τισ δικζσ τουσ δραςτθριότθτεσ με το μοντζλο του Άβακα. Παρουςίαςη
Γλώσσα προγραμματισμού python
Προηγούμενο Σημειώσεις Επόμενο Γλώσσα προγραμματισμού python Η γλώσσα αυτή γράφτηκε από τον Ολλανδό προγραμματιστή Guido van Rossum στα τέλη της δεκαετίας 1980-90. Η έκδοση 2.0 δημοσιεύτηκε στις 16 Οκτωβρίου
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Εισαγωγή στην Python Χειµερινό Εξάµηνο 2014
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Εισαγωγή στην Python Χειµερινό Εξάµηνο 2014 Εγκατάσταση Από το www.python.org è Downloads Υπάρχουν εκτενείς οδηγίες για όλα τα λειτουργικά (π.χ., Windows, Mac OS X)
Εργαςτιριο Βάςεων Δεδομζνων
Εργαςτιριο Βάςεων Δεδομζνων 2010-2011 Μάθημα 1 ο 1 Ε. Σςαμούρα Σμήμα Πληροφορικήσ ΑΠΘ Σκοπόσ του 1 ου εργαςτθριακοφ μακιματοσ Σκοπόσ του πρϊτου εργαςτθριακοφ μακιματοσ είναι να μελετιςουμε ερωτιματα επιλογισ
Δομζσ Δεδομζνων Πίνακεσ
Δομζσ Δεδομζνων Πίνακεσ Διάλεξθ 2 Περιεχόμενα Πίνακεσ: Οριςμοί, Γενικζσ ζννοιεσ Αποκικευςθ πινάκων Ειδικζσ μορφζσ πινάκων Αλγόρικμοι Αναηιτθςθσ Σειριακι Αναηιτθςθ Δυαδικι Αναηιτθςθ Οριςμοί, Γενικζσ ζννοιεσ
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Σφάλματα, εξαιρέσεις, εκσφαλμάτωση Χειμερινό Εξάμηνο 2016
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Σφάλματα, εξαιρέσεις, εκσφαλμάτωση Χειμερινό Εξάμηνο 2016 Τύποι Σφαλμάτων Συντακτικά λάθη (syntax errors) Λάθη κατά την εκτέλεση (run-time errors) Λογικά σφάλματα 2
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Εισαγωγή στην Python Χειμερινό Εξάμηνο 2016
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Εισαγωγή στην Python Χειμερινό Εξάμηνο 2016 H Γλώσσα Python Δημιουργήθηκε από τον Guido van Rossum ο οποίος εξακολουθεί να την εξελίσσει. Benevolent Dictator for Life
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Συναρτήσεις
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δόμηση προγράμματος Μέχρι τώρα έχουμε δει πως να χρησιμοποιούμε έτοιμες συναρτήσεις και μεθόδους στα προγράμματά μας (π.χ. le(), max(), prit()) Μπορούμε
Βασικές Ασκήσεις από τα Εργαστήρια της Python. Πέμπτη Εργ. 3 17:15 και 19:15
Βασικές Ασκήσεις από τα Εργαστήρια της Python Πέμπτη Εργ. 3 17:15 και 19:15 Αντί να χρησιμοποιούμε πολλές ομοειδείς μεταβλητές του ίδιου τύπου, όπως παραδείγματος χάριν, οι 7 μέσες θερμοκρασίες μίας εβδομάδας,
Θέματα Προγραμματισμού Η/Υ
Πρόγραμμα Μεταπτυχιακών Σπουδών Πληροφορική και Υπολογιστική Βιοϊατρική Θέματα Προγραμματισμού Η/Υ Ενότητα 10: Θεματική Ενότητα: Λίστες (Lists) και Πλειάδες (Tuples) ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ Θεματική
x n D 2 ENCODER m - σε n (m 2 n ) x 1 Παραδείγματα κωδικοποιθτϊν είναι ο κωδικοποιθτισ οκταδικοφ ςε δυαδικό και ο κωδικοποιθτισ BCD ςε δυαδικό.
Κωδικοποιητές Ο κωδικοποιθτισ (nor) είναι ζνα κφκλωμα το οποίο διακζτει n γραμμζσ εξόδου και το πολφ μζχρι m = 2 n γραμμζσ ειςόδου και (m 2 n ). Οι ζξοδοι παράγουν τθν κατάλλθλθ λζξθ ενόσ δυαδικοφ κϊδικα
Δομζσ Δεδομζνων. Αναηιτθςθ και Ταξινόμθςθ Διάλεξθ 3
Δομζσ Δεδομζνων Αναηιτθςθ και Ταξινόμθςθ Διάλεξθ 3 Περιεχόμενα Αλγόρικμοι αναηιτθςθσ Σειριακι αναηιτθςθ Αναηιτθςθ κατά ομάδεσ Δυαδικι Αναηιτθςθ Ταξινόμθςθ Ταξινόμθςθ με παρεμβολι (insertion sort) Ταξινόμθςθ
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014 Αναζήτηση και Ταξινόµηση Βασικές λειτουργίες σε προγράµµατα Αναζήτηση (searching): Βρες ένα ζητούµενο στοιχείο σε µια
Θέματα Προγραμματισμού Η/Υ
Πρόγραμμα Μεταπτυχιακών Σπουδών Πληροφορική και Υπολογιστική Βιοϊατρική Θέματα Προγραμματισμού Η/Υ Ενότητα 4: Θεματική Ενότητα: Είσοδος/έξοδος, μεταβλητές, αναθέσεις ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ Θεματική
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Έλεγχος Ροής - Παραδείγµατα Χειµερινό Εξάµηνο 2014
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Έλεγχος Ροής - Παραδείγµατα Χειµερινό Εξάµηνο 2014 Δίσεκτο έτος Ένα έτος είναι δίσεκτο αν διαιρείται ακριβώς µε το 400 ή διαιρείται ακριβώς µε το 4 και δεν διαιρείται
Παράςταςη ςυμπλήρωμα ωσ προσ 1
Δρ. Χρήστος Ηλιούδης Θζματα διάλεξησ ΣΤ1 Προςθεςη αφαίρεςη ςτο ΣΤ1 2 ή ΣΤ1 Ονομάηουμε ςυμπλιρωμα ωσ προσ μειωμζνθ βάςθ R ενόσ μθ προςθμαςμζνου αρικμοφ Χ = ( Χ θ-1 Χ θ-2... Χ 0 ) R ζναν άλλον αρικμό Χ'
Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2
Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2 Δρ. Χρήζηος Ηλιούδης Μθ Προςθμαςμζνοι Ακζραιοι Εφαρμογζσ (ςε οποιαδιποτε περίπτωςθ δεν χρειάηονται αρνθτικοί αρικμοί) Καταμζτρθςθ. Διευκυνςιοδότθςθ.
ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 4
ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 4 Λίστες (Lists) Λίστα (list) στην Python ονομάζεται μια δυναμική δομή δεδομένων (στην πραγματικότητα, ένα αντικείμενο) που περιέχει πολλαπλά δεδομένα. Ουσιαστικά, η λίστα
Στα προθγοφμενα δφο εργαςτιρια είδαμε τθ δομι απόφαςθσ (ι επιλογισ ι ελζγχου ροισ). Ασ κυμθκοφμε:
ΔΟΜΗ ΑΠΟΦΑΗ Στα προθγοφμενα δφο εργαςτιρια είδαμε τθ δομι απόφαςθσ (ι επιλογισ ι ελζγχου ροισ). Ασ κυμθκοφμε: Όταν το if που χρθςιμοποιοφμε παρζχει μόνο μία εναλλακτικι διαδρομι εκτζλεςθ, ο τφποσ δομισ
Τίτλος Μαθήματος: Εισαγωγή στον Προγραμματισμό
Τίτλος Μαθήματος: Εισαγωγή στον Προγραμματισμό Ενότητα: Εφαρμογές σε ταξινομήσεις και αναζήτηση στοιχείων Διδάσκων: Λέκτορας Xάρης Παπαδόπουλος Τμήμα: Μαθηματικών 343 Ειςαγωγι ςτον Προγραμματιςμό Τμιμα
Εισαγωγή στον Προγ/μό Υπολογιστών
Εισαγωγή στον Προγ/μό Υπολογιστών Διάλεξη 7 Ακολουθίες (Sequences) Περιεχόμενα 1. Ακολουθίες 2. Λίστα (list) 3. Επαναληπτικοί υπολογισμοί ακολουθιών 4. Επεξεργασία ακολουθιών 5. Τελεστές ακολουθιών 6.
Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 15. Πίνακεσ ΙI. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων
Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 15. Πίνακεσ ΙI Ιωάννθσ Κατάκθσ Σιμερα o Ειςαγωγι o Διλωςθ o Αρχικοποίθςθ o Πρόςβαςθ o Παραδείγματα Πίνακεσ - Επανάλθψθ o Στθν προθγοφμενθ διάλεξθ κάναμε μια
Βασικά Στοιχεία Python 3
Βασικά Στοιχεία Python 3 Compiler Lecture s 1.0 documentation Βασικά Στοιχεία Python 3 Στη συνέχεια παρουσιάζονται ορισμένα ενδιαφέροντα στοιχεία της Python 3. Αυτό που ακολουθεί δεν είναι tutorial, αν
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αλφαριθμητικά Χειμερινό Εξάμηνο 2016
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Αλφαριθμητικά Χειμερινό Εξάμηνο 2016 Λειτουργίες σε αλφαριθμητικά Μπορούμε να εφαρμόσουμε όλες τις λειτουργίες που έχουμε δει για πλειάδες και λίστες (π.χ. slicing)
ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι
Παράςταςη κινητήσ υποδιαςτολήσ ςφμφωνα με το πρότυπο ΙΕΕΕ Δρ. Χρήστος Ηλιούδης το πρότυπο ΙΕΕΕ 754 ζχει χρθςιμοποιθκεί ευρζωσ ςε πραγματικοφσ υπολογιςτζσ. Το πρότυπο αυτό κακορίηει δφο βαςικζσ μορφζσ κινθτισ
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Σφάλµατα, εξαιρέσεις, εκσφαλµάτωση Χειµερινό Εξάµηνο 2014
ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Σφάλµατα, εξαιρέσεις, εκσφαλµάτωση Χειµερινό Εξάµηνο 2014 Τύποι Σφαλµάτων Συντακτικά λάθη (syntax errors) Λάθη κατά την εκτέλεση (run-time errors) Λογικά σφάλµατα 2
ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 5. Λεξικά (Dictionaries)
ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 5 Λεξικά (Dictionaries) Τα λεξικά είναι μια μεταβλητή δομή δεδομένων της Python για την αποθήκευση συλλογών δεδομένων της μορφής: κλειδί τιμή. Δηλαδή, κάθε στοιχείο σε ένα
ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 5 ο Εργαςτιριο Ειςαγωγι ςτθ Γραμμι Εντολϊν
ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ 5 ο Εργαςτιριο Ειςαγωγι ςτθ Γραμμι Εντολϊν Τι είναι θ Γραμμι Εντολϊν (1/6) Στουσ πρϊτουσ υπολογιςτζσ, και κυρίωσ από τθ δεκαετία του 60 και μετά, θ αλλθλεπίδραςθ του χριςτθ με τουσ
16. Πίνακεσ και Συναρτήςεισ
Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 16. Πίνακεσ και Συναρτήςεισ Ιωάννθσ Κατάκθσ Σιμερα o Κλιςθ με τιμι o Κλιςθ με αναφορά o Πίνακεσ και ςυναρτιςεισ o Παραδείγματα Ειςαγωγι o Στισ προθγοφμενεσ
Βασικά στοιχεία γλώσσας προγραμματισμού. Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19
Βασικά στοιχεία γλώσσας προγραμματισμού Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19 Ας θυμηθούμε ξανά την παλιά μας «αγάπη» Η Python είναι μία σύγχρονη, διερμηνευόμενη, υψηλού επιπέδου γλώσσα γενικής χρήσης
Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 19. Αλφαριθμητικά II. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων
Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 19. Αλφαριθμητικά II Ιωάννθσ Κατάκθσ Αλφαρικμθτικά ςτθ C Ζνα string είναι μία ακολουκία αλφαρικμθτικϊν χαρακτήρων, ςθμείων ςτίξθσ κτλ. Π.χ. Hello How are you?
ΟΝΟΜΑΣΟΛΟΓΙΑ ΠΑΡΑΜΕΣΡΩΝ ΓΙΑ ΠΡΟΑΡΜΟΜΕΝΕ ΑΝΑΦΟΡΕ. @XXX@_<όνομα παραμζτρου> (Εμφανίηεται ςαν Caption ςτθν φόρμα των φίλτρων).
ΟΝΟΜΑΣΟΛΟΓΙΑ ΠΑΡΑΜΕΣΡΩΝ ΓΙΑ ΠΡΟΑΡΜΟΜΕΝΕ ΑΝΑΦΟΡΕ. @XXX@_ (Εμφανίηεται ςαν Caption ςτθν φόρμα των φίλτρων). Βαςικοί παράμετροι @EDT@_ @CHK@_ @CXD@_ @CXDC@_ @CMB@_ @CHKLB@_ Παράμετροσ που
Εργαςτιριο Πικανοτιτων Σθμειϊςεισ προγραμματιςμοφ: βαςικζσ γνϊςεισ ανάπτυξθσ εφαρμογϊν. Κϊςτασ Αρβανιτάκθσ
Εργαςτιριο Πικανοτιτων Σθμειϊςεισ προγραμματιςμοφ: βαςικζσ γνϊςεισ ανάπτυξθσ εφαρμογϊν Κϊςτασ Αρβανιτάκθσ Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του
Λίστες. Lista=[ red, green, blue ] Το πλήθος των στοιχείων μια λίστας δίνεται από τη συνάρτηση len(): Len(Lista)
Λίστες Η πιο σημαντική ακολουθία της Python, μοιάζουν με τους πίνακες των παραδοσιακών γλωσσών αλλά είναι πολύ ποιο ευέλικτες: μπορεί να περιέχουν στοιχεία διαφορετικού τύπου και μας παρέχουν τη δυνατότητα
Σημειωματάριο Τετάρτης 18 Οκτ. 2017
Σημειωματάριο Τετάρτης 18 Οκτ. 2017 Περισσότερα για λίστες και ανακύκλωση Είδαμε σήμερα διάφορα προβλήματα και λύσεις για λίστες. Είδαμε επίσης την ανακύκλωση while. Στο επόμενο βλέπουμε πώς μπορούμε να
Modellus 4.01 Συ ντομοσ Οδηγο σ
Νίκοσ Αναςταςάκθσ 4.01 Συ ντομοσ Οδηγο σ Περιγραφή Σο είναι λογιςμικό προςομοιϊςεων που ςτθρίηει τθν λειτουργία του ςε μακθματικά μοντζλα. ε αντίκεςθ με άλλα λογιςμικά (π.χ. Interactive Physics, Crocodile
Πληροφορική ΙΙ Θεματική Ενότητα 10
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Πληροφορική ΙΙ Θεματική Ενότητα 10 Λίστες (Lists) και Πλειάδες (Tuples) Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται
print( x is positive ) Στο διερμηνευτή Python, προσοχή στη στοίχιση, διότι γίνεται από το χρήστη:
37 ΛΑΜΒΑΝΟΝΤΑΣ ΑΠΟΦΑΣΕΙΣ 1. Εκτέλεση υπό συνθήκη if x >0: print('x is positive') x > = 0 print( x is positive ) Σχήμα: Η λογική του if then Στο διερμηνευτή Python, προσοχή στη στοίχιση, διότι γίνεται από
Δομζσ Αφαιρετικότθτα ςτα Δεδομζνα
Δομζσ Αφαιρετικότθτα ςτα Δεδομζνα Περιεχόμενα Ζννοια δομισ Οριςμόσ δομισ Διλωςθ μεταβλθτϊν Απόδοςθ Αρχικϊν τιμϊν Αναφορά ςτα μζλθ μιασ δομισ Ζνκεςθ Δομισ Πίνακεσ Δομϊν Η ζννοια τθσ δομισ Χρθςιμοποιιςαμε
ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου.
ΜΑΘΗΜΑΤΑ PYTHON To 1991 o Guido van Rossman δημιούργησε την Python ως μια ανοιχτού λογισμικού ανεξάρτητη πλατφόρμας γενικού σκοπού γλώσσα προγραμματισμού (open source platformindependent). Είναι βασικά
ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή
ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ Python & NLTK: Εισαγωγή Εισαγωγή Γιατί Python? Παρουσίαση NLTK Πηγές και χρήσιμα εργαλεία Φροντιστήριο σε Python Στο φροντιστήριο: Εισαγωγή στην Python Ζητήματα προγραμματισμού για
ςυςτιματα γραμμικϊν εξιςϊςεων
κεφάλαιο 7 Α ςυςτιματα γραμμικϊν εξιςϊςεων αςικζσ ζννοιεσ Γραμμικά, λζγονται τα ςυςτιματα εξιςϊςεων ςτα οποία οι άγνωςτοι εμφανίηονται ςτθν πρϊτθ δφναμθ. Σα γραμμικά ςυςτιματα με δφο εξιςϊςεισ και δφο
Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20
Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20 Διάλεξη 2 Τύποι, Υπό Όρους Εκτέλεση Παπαϊωάννου Αθανάσιος Π.Μ.Σ. «Εφαρμοσμένη Πληροφορική» Χειμερινό Εξάμηνο 20 16-20 17 Αριθμητικές Εκφράσεις Τελεστής Πράξη
ΡΟΓΑΜΜΑΤΙΣΤΙΚΟ ΡΕΙΒΑΛΛΟΝ MICRO WORLDS PRO
ΡΟΓΑΜΜΑΤΙΣΤΙΚΟ ΡΕΙΒΑΛΛΟΝ MICRO WORLDS PRO Το Micro Worlds Pro είναι ζνα ολοκλθρωμζνο περιβάλλον προγραμματιςμοφ. Χρθςιμοποιεί τθ γλϊςςα προγραμματιςμοφ Logo (εξελλθνιςμζνθ) Το Micro Worlds Pro περιλαμβάνει
ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΗ ΝΟΗΛΕΤΣΙΚΗ. Φιλιοποφλου Ειρινθ
ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΗ ΝΟΗΛΕΤΣΙΚΗ Φιλιοποφλου Ειρινθ Προςθήκη νζων πεδίων Ασ υποκζςουμε ότι μετά τθ δθμιουργία του πίνακα αντιλαμβανόμαςτε ότι ζχουμε ξεχάςει κάποια πεδία. Είναι ζνα πρόβλθμα το οποίο
Διαχείριςθ του φακζλου "public_html" ςτο ΠΣΔ
Διαχείριςθ του φακζλου "public_html" ςτο ΠΣΔ Οι παρακάτω οδθγίεσ αφοροφν το χριςτθ webdipe. Για διαφορετικό λογαριαςμό χρθςιμοποιιςτε κάκε φορά το αντίςτοιχο όνομα χριςτθ. = πατάμε αριςτερό κλικ ςτο Επιςκεφκείτε
Εισαγωγή στην Γλώσσα Προγραμματισμού Python. 12/10/16 1
Εισαγωγή στην Γλώσσα Προγραμματισμού Python 12/10/16 costis@teicrete.gr 1 Διάφορες Γλώσσες Προγραμματισμού C or C++ Java Perl Scheme Fortran Python Matlab 12/10/16 costis@teicrete.gr 2 Περίληψη Παρουσίασης
Ειςαγωγι ςτθν Επιςτιμθ Υπολογιςτϊν. Ειςαγωγι ςτθν Python
Ειςαγωγι ςτθν Επιςτιμθ Υπολογιςτϊν Ειςαγωγι ςτθν Python Γ Μζροσ Modules, Αντικειμενοςτραφισ Προγραμματιςμόσ ςτθν Python, Classes, Objects, Αλλθλεπίδραςθ με αρχεία Ειςαγωγι αρκρωμάτων (modules): import
Η γλώςςα προγραμματιςμού C
Η γλώςςα προγραμματιςμού C Οι εντολζσ επανάλθψθσ (while, do-while, for) Γενικά για τισ εντολζσ επανάλθψθσ Συχνά ςτο προγραμματιςμό είναι επικυμθτι θ πολλαπλι εκτζλεςθ μιασ ενότθτασ εντολϊν, είτε για ζνα
Λαμβάνοντασ υπόψη ότι κατά την πρόςθεςη δφο δυαδικϊν ψηφίων ιςχφει: Κρατοφμενο
Αριθμητικά κυκλώματα Ημιαθροιστής (Half Adder) Ο ημιαθροιςτήσ είναι ζνα κφκλωμα το οποίο προςθζτει δφο δυαδικά ψηφία (bits) και δίνει ωσ αποτζλεςμα το άθροιςμά τουσ και το κρατοφμενο. Με βάςη αυτή την
Προγραμματιστικά Εργαλεία και Τεχνολογίες για Επιστήμη Δεδομένων
Προγραμματιστικά Εργαλεία και Τεχνολογίες για Επιστήμη Δεδομένων Παράδοση 20/12/2018, Νίκος Παπασπύρου. Εισαγωγή στις γλώσσες σεναρίων (scripting languages) Βλ. π.χ. Κεφάλαιο 13 του βιβλίου Πραγματολογία
Εισαγωγή στον Προγραμματισμό Python Μάθημα 4: Συναρτήσεις (functions) και δομοστοιχεία (modules) στην Python
Εισαγωγή στον Προγραμματισμό Python Μάθημα 4: Συναρτήσεις (functions) και δομοστοιχεία (modules) στην Python Νοέμβριος 2014 Χ. Αλεξανδράκη, Γ. Δημητρακάκης Συναρτήσεις (Functions) Στον προγραμματισμό,
Εισαγωγικές έννοιες. Αντώνησ Κ Μαώργιώτησ
Εισαγωγικές έννοιες Αντώνησ Κ Μαώργιώτησ Έννοιεσ που πρϋπει να επιβεβαιώςουμε ότι τισ ξϋρουμε (1) - αναζότηςη Ιςτοςελίδα Αρχείο που περιζχει πλθροφορίεσ προοριςμζνεσ για δθμοςίευςθ ςτο Παγκόςμιο Ιςτό (www).
17. Πολυδιάςτατοι πίνακεσ
Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 17. Πολυδιάςτατοι πίνακεσ Ιωάννθσ Κατάκθσ Πολυδιάςτατοι πίνακεσ o Μζχρι τϊρα μιλοφςαμε για μονοδιάςτατουσ πίνακεσ ι int age[5]= 31,28,31,30,31; o Για παράλλθλουσ
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ
ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής
Πληρουορική Γ Γσμμασίοσ
Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:
ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Γνωριμία με το λογιςμικό του υπολογιςτι
ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ ΚΕΦΑΛΑΙΟ 5: Γνωριμία με το λογιςμικό του υπολογιςτι Λογιςμικό (Software), Πρόγραμμα (Programme ι Program), Προγραμματιςτισ (Programmer), Λειτουργικό Σφςτθμα (Operating
Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ
Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ Project του μαθήματος Εργασία 2 ατόμων Προφορική εξέταση για: Project (80%) Θεωρία (20%) Στο φροντιστήριο: Συζητάμε
Γλωσσική Τεχνολογία. Εισαγωγικό Φροντιστήριο
Γλωσσική Τεχνολογία Εισαγωγικό Φροντιστήριο Project του μαθήματος Εργασία 2 ατόμων Προφορική εξέταση για: Project (80%) Θεωρία (20%) Στο φροντιστήριο: Συζητάμε σχεδιαστικές επιλογές Λύνουμε ζητήματα υλοποίησης
Ένα πρόβλθμα γραμμικοφ προγραμματιςμοφ βρίςκεται ςτθν κανονικι μορφι όταν:
Μζθοδος Simplex Η πλζον γνωςτι και περιςςότερο χρθςιμοποιουμζνθ μζκοδοσ για τθν επίλυςθ ενόσ γενικοφ προβλιματοσ γραμμικοφ προγραμματιςμοφ, είναι θ μζκοδοσ Simplex θ οποία αναπτφχκθκε από τον George Dantzig.
Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium V
Σ ΤΑΤ Ι Σ Τ Ι Κ Η i Statisticum collegium V Στατιςτική Συμπεραςματολογία Ι Σημειακζσ Εκτιμήςεισ Διαςτήματα Εμπιςτοςφνησ Στατιςτική Συμπεραςματολογία (Statistical Inference) Το πεδίο τθσ Στατιςτικισ Συμπεραςματολογία,
3 ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ ( while, do while )
3 ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ ( while, do while ) Στα πιο πολλά προγράμματα απαιτείται κάποια ι κάποιεσ εντολζσ να εκτελοφνται πολλζσ φορζσ για όςο ιςχφει κάποια ςυνκικθ. Ο αρικμόσ των επαναλιψεων μπορεί να είναι
ΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Αρχεία - Φάκελοι
ΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ Αρχείο (File) Φάκελοσ (Folder) Διαχειριςτισ Αρχείων (File Manager) Τφποι Αρχείων Σε τι εξυπθρετεί θ οργάνωςθ των εργαςιϊν μασ ςτουσ υπολογιςτζσ; Πϊσ κα οργανϊςουμε
Πληροφορική ΙΙ Θεματική Ενότητα 3
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Πληροφορική ΙΙ Θεματική Ενότητα 3 Είσοδος/έξοδος, μεταβλητές, αναθέσεις Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται
Εξαιρέσεις Εισαγωγή. Εξαιρέσεις. ηµήτρης Λεβεντέας
Εισαγωγή Εξαιρέσεις ηµήτρης Λεβεντέας 20 Μαΐου 2010 Εισαγωγή Ορισµός Τι είναι Ορισµός Ο χειρισµός εξαιρέσεων είναι µια κατασκευή η οποία µας επιτρέπει να χειριστούµε ειδικές συνθήκες που αλλάζουν την ϕυσιολογική
Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ
Διάλεξη 2 Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις Διοργάνωση : ΚΕΛ ΣΑΤΜ Διαφάνειες: Skaros, MadAGu Παρουσίαση: MadAGu Άδεια: Creative Commons 3.0 2 Internal
Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο τησ Αριθμογραμμήσ
Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο τησ Αριθμογραμμήσ Αυτζσ οι οδθγίεσ ζχουν ςτόχο να βοθκιςουν τουσ εκπαιδευτικοφσ να καταςκευάςουν τισ δικζσ τουσ δραςτθριότθτεσ με το μοντζλο τθσ Αρικμογραμμισ.
Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων. 18. Αλφαριθμητικά. Ιωάννθσ Κατάκθσ. ΕΡΛ 032: Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων
Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων 18. Αλφαριθμητικά Ιωάννθσ Κατάκθσ Αλφαρικμθτικά o Ζνα string είναι μία ακολουκία χαρακτιρων, ςθμείων ςτίξθσ κτλ Hello How are you? 121212 *Apple#123*% Σιμερα
5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ
5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ Να γραφεί πρόγραμμα, το οποίο κα δίνει τισ τιμζσ 5 και 6 ςε δφο μεταβλθτζσ a και b και κα υπολογίηει και κα εμφανίηει το άκροιςμά τουσ sum. ΛΟΓΙΚΟ ΔΙΑΓΡΑΜΜΑ a 5 b 6 sum a+b sum ΑΛΓΟΡΙΘΜΟ
Δομθμζνοσ Προγραμματιςμόσ. Βαγγζλθσ Οικονόμου Εργαςτιριο 9
Δομθμζνοσ Προγραμματιςμόσ Βαγγζλθσ Οικονόμου Εργαςτιριο 9 Συναρτιςεισ Αφαιρετικότθτα ςτισ διεργαςίεσ Συνάρτθςεισ Διλωςθ, Κλιςθ και Οριςμόσ Εμβζλεια Μεταβλθτών Μεταβίβαςθ παραμζτρων ςε ςυναρτιςεισ Συναρτιςεισ
Ειδικά Θζματα Βάςεων Δεδομζνων
Ειδικά Θζματα Βάςεων Δεδομζνων Ενότητα 11: Αντικειμενοςτραφήσ και αντικείμενοςχεςιακζσ βάςεισ Δρ. Τςιμπίρθσ Αλκιβιάδθσ Τμιμα Μθχανικϊν Πλθροφορικισ ΤΕ Άδειεσ Χρήςησ Το παρόν εκπαιδευτικό υλικό υπόκειται
ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 2 ο Εργαςτιριο Διαχείριςθ Διεργαςιϊν
ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ 2 ο Εργαςτιριο Διαχείριςθ Διεργαςιϊν Τπόβακρο (1/3) τουσ παλαιότερουσ υπολογιςτζσ θ Κεντρικι Μονάδα Επεξεργαςίασ (Κ.Μ.Ε.) μποροφςε κάκε ςτιγμι να εκτελεί μόνο ζνα πρόγραμμα τουσ ςφγχρονουσ
Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20
Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20 Διάλεξη 4 Ανακυκλώσεις Παπαϊωάννου Αθανάσιος Π.Μ.Σ. «Εφαρμοσμένη Πληροφορική» Χειμερινό Εξάμηνο 20 16-20 17 Συναρτήσεις: Παράμετρος key/value Μπορούμε να περάσουμε
Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Διάλεξθ 4
Τμήμα Μησανικών Πληποφοπικήρ, Τ.Ε.Ι. Ηπείπος Ακαδημαϊκό Έτορ 2016-2017, 6 ο Εξάμηνο Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Διάλεξθ 4 Διδάςκων Τςιακμάκθσ Κυριάκοσ, Phd MSc in Electronic Physics (Radioelectrology)
Βασικά στοιχεία γλώσσας προγραμματισμού
Βασικά στοιχεία γλώσσας προγραμματισμού Κέρος Α. Ιωάννης Καθηγητής Πληροφορικής ΠΕ19 1 ο ΕΠΑΛ Κιλκίς Ας θυμηθούμε ξανά την παλιά μας «αγάπη» Η Python είναι μία σύγχρονη, διερμηνευόμενη, υψηλού επιπέδου
Ανάπτυξη Εφαρμογών με Σχεςιακέσ Βάςεισ Δεδομένων
Ανάπτυξη Εφαρμογών με Σχεςιακέσ Βάςεισ Δεδομένων Δρ. Θεοδώρου Παύλοσ theodorou@uoc.gr Περιεχόμενα Τι είναι οι Βάςεισ Δεδομζνων (DataBases) Τι είναι Σφςτθμα Διαχείριςθσ Βάςεων Δεδομζνων (DBMS) Οι Στόχοι
ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ
ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ ελιδοποίθςθ (1/10) Σόςο θ κατάτμθςθ διαμεριςμάτων ςτακεροφ μεγζκουσ όςο και θ κατάτμθςθ διαμεριςμάτων μεταβλθτοφ και άνιςου μεγζκουσ δεν κάνουν
Joomla! - User Guide
Joomla! - User Guide τελευταία ανανέωση: 10/10/2013 από την ICAP WEB Solutions 1 Η καταςκευι τθσ δυναμικισ ςασ ιςτοςελίδασ ζχει ολοκλθρωκεί και μπορείτε πλζον να προχωριςετε ςε αλλαγζσ ι προςκικεσ όςον
ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4.1
ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4. Να γίνει πρόγραμμα το οποίο να επιλφει το Διαγώνιο Σφςτθμα: A ι το ςφςτθμα : ι ςε μορφι εξιςώςεων το ςφςτθμα : Αλγόρικμοσ m(). Διαβάηουμε τθν τιμι του ( θ διάςταςθ του Πίνακα Α )..
Διαδικαςία Διαχείριςθσ Στθλϊν Βιβλίου Εςόδων - Εξόδων. (v.1.0.7)
Διαδικαςία Διαχείριςθσ Στθλϊν Βιβλίου Εςόδων - Εξόδων (v.1.0.7) 1 Περίληψη Το ςυγκεκριμζνο εγχειρίδιο δθμιουργικθκε για να βοθκιςει τθν κατανόθςθ τθσ διαδικαςίασ διαχείριςθσ ςτθλών βιβλίου Εςόδων - Εξόδων.
ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Όλοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα μικρότεροι του 10000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Αν κάπου κάνετε κάποιες υποθέσεις
HY437 Αλγόριθμοι CAD
HY437 Αλγόριθμοι CAD Διδάςκων: Χ. Σωτηρίου http://inf-server.inf.uth.gr/courses/ce437/ 1 ΗΥ437 - Πολυεπίπεδθ Λογικι Απλοποίθςθ με Περιεχόμενα Είδθ Αδιάφορων Τιμϊν ςε Πολφ-επίπεδα Δυαδικά Δίκτυα Αδιάφορεσ
Α) Ενδεικτικϋσ απαντόςεισ των θεμϊτων
Πανελλόνιεσ εξετϊςεισ Γ Τϊξησ 2011 Ανϊπτυξη Εφαρμογών ςε Προγραμματιςτικό Περιβϊλλον ΘΕΜΑ Α Α) Ενδεικτικϋσ απαντόςεισ των θεμϊτων Α1. Σ/Λ 1. Σωςτι 2. Σωςτι 3. Λάκοσ 4. Λάκοσ 5. Λάκοσ Α2. Σ/Λ 1. Σωςτι 2.