ΜΥΥ105: Εισαγωγή στον Προγραμματισμό

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Scripting Language Python
Advertisements

ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Ανάπτυξη Δικτύων Καθηγητής: Φουληράς Παναγιώτης
Εισαγωγή στον Προγραμματισμό, Αντώνιος Συμβώνης, ΣΕΜΦΕ, ΕΜΠ, Slide 1 Εβδομάδα 3: Υλοποίηση μεθόδων.
Python And Robotics.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα.
Φροντηστήριο Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Eργαλεία.
Μέλη ομάδας Μαρία Στυλιανού Νίκος Οδυσσέως Γεωργία Χριστοδουλίδου
Εισαγωγικό Φροντηστήριο Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Eργαλεία.
Γλωσσική Τεχνολογία String Handling – Regular Expressions.
Εισαγωγή Ειδικά Θέματα Μεταγγλωτιστών Χειμερινό Εξάμηνο / Κατασκευή compiler για την γλώσσα Minijava.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II.
Γλωσσική Τεχνολογία Εισαγωγικό Φροντιστήριο. Project του μαθήματος  Εργασία 2 ατόμων  Προφορική εξέταση για :  Project (80%)  Θεωρία (20%)  Στο φροντιστήριο.
Δρ. Μαρία Ι. Ανδρέου Εισαγωγή στον Αντικειμενόστρεφη Προγραμματισμό (Object-Oriented Programming) Java Syntax and Style.
Μετατροπή Εκφράσεων σε C
ΟΣΣ Δεκεμβρίου 2004 Σχεδιασμός Λογισμικού Γλώσσες Προγραμματισμού ΙΙ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ.
32η Συνάντηση Εκπαιδευτικών στη Δυτική Μακεδονία σε Θέματα Τ. Π. Ε
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ – FILE & PROCESS HANDLING Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία.
ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αλφαριθμητικά (Strings)
Μάθημα 9 Λίγο απ’ όλα! HTML 5 Advanced PHP XML. HTML 5 Πρόκειται για μια νέα έκδοση της HTML που συμπληρώνει τις δυνατότητες της γλώσσας με κάποια Tags.
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Έλεγχος Ροής - Παραδείγματα Χειμερινό Εξάμηνο 2015.
VOICES OF YOUNG PEOPLE IN EUROPE-STREET ART by 1st EPAL ELEFSINAS Teacher’s name : Εleni Alexandraki(ΠΕ 06)
Παραβίαση δικαιωμάτων του παιδιού - παιδική εργασία.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java.
ΤΜΗΜΑ ΤΟΥΡΙΣΤΙΚΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΠΙΧΕΙΡΗΜΑΤΙΚΟΤΗΤΑ ΣΤΟΝ ΤΟΥΡΙΣΜΟ ΕΙΣΗΓΗΤΗΣ ΒΕΛΙΣΣΑΡΙΟΥ ΕΥΣΤΑΘΙΟΣ ΕΠΙΚΟΥΡΟΣ ΚΑΘΗΓΗΤΗΣ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ ΤΕΧΝΟΛΟΓΙΚΟ.
Τεχνολογία και Προγραμματισμός Υπολογιστών Ενότητα 5: Τύπος πίνακα,Μεταβλητές με δείκτη, Πολυδιάστατοι πίνακες Επίκουρος Καθηγητής Χρήστος Μακρής Τμήμα.
Πίστη πελατών και στρατηγική προϊόντος. Ικανοποίηση του πελάτη: το κλειδί για την πίστη των πελατών  Η ανώτερη εξυπηρέτηση του πελάτη δημιουργεί ικανοποίηση.
Variables, Expressions, and Statements Chapter 2.
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγ/μό Υπολογιστών
Αντικειμενοστραφής Προγραμματισμός ΙΙ
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Φυσικές Ιδιότητες των Υλικών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Αντικειμενοστραφής Προγραμματισμός ΙΙ
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγ/μό Υπολογιστών
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Εφαρμογές Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΜΕΤΑΒΛΗΤΕΣ-ΣΤΑΘΕΡΕΣ -ΕΚΦΡΑΣΕΙΣ
Ενότητα Εισαγωγή Είναι εύκολη στη χρήση και στην εκμάθηση.
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Κελυφοποιημένα δεδομένα [encapsulated data]
Ταξινόμηση Ορισμός: Δοθέντων των στοιχείων a1,a2,… ,an η ταξινόμηση συνίσταται στην αντιμετάθεση της θέσης των στοιχείων ώστε να τοποθετηθούν με μια νέα.
ΔΟΜΕΣ ΕΛΕΓΧΟΥ(if-else, switch) και Λογικοί τελεστές / παραστάσεις
Συμβουλές για επιτυχημένες παρουσιάσεις στο PowerPoint
ΕΛΛΗΝΙΚΕΣ ΕΒΡΑΪΚΕΣ ΚΟΙΝΟΤΗΤΕΣ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
«Από τη MicroWorlds Pro στην Python»
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Πρωτογενείς τύποι δεδομένων
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Ειδικά Θέματα στον προγραμματισμό Υπολογιστών
Εισαγωγή στον Προγραμματισμό με Python, ΑΠΘ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ Εισαγωγή στον Προγραμματισμό με Python Εβδομάδα 1: Βασικά στοιχεία.
Διεθνής Ημέρα Μνήμης για τα θύματα του Ολοκαυτώματος
ΤΟ ΟΛΟΚΑΥΤΩΜΑ ΤΟΥ ΧΟΡΤΙΑΤΗ
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Διάλεξη #3: Υλοποίηση μεθόδων.
Μεταγράφημα παρουσίασης:

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Αλφαριθμητικά

Λειτουργίες σε αλφαριθμητικά Μπορούμε να εφαρμόσουμε όλες τις λειτουργίες που έχουμε δει για πλειάδες και λίστες (π.χ. slicing) σε αλφαριθμητικά Προσοχή! Τα αλφαριθμητικά δεν τροποποιούνται >>> website = 'http://www.python.org' >>> website[-3:] = 'com' Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> website[-3:] = 'com' TypeError: 'str' object does not support item assignment

Slicing αλφαριθμητικών >>> s='Hello World' >>> s[4] 'o' >>> s[3:7] 'lo W' >>> s[-4:-1] 'orl' >>> s[4:2] '' >>> s[7:2:-2] 'o l' μη έγκυρο διάστημα

Άλλες λειτουργίες >>> s='Hello World' >>> min(s) ' ' >>> max(s) 'r' >>> 'Hello' in s True >>> len(s) 11 >>> 'Hello'*2+'World' 'HelloHelloWorld'

Μέθοδοι Αλφαριθμητικών >>> s='Hello Hello World' >>> s.count('Hello') 2 >>> s.replace('Hello','Bye') 'Bye Bye World' >>> s.split() ['Hello', 'Hello', 'World'] >>> s = 'state-of-the-art' >>> s.split('-') ['state', 'of', 'the', 'art'] επιστρέφει το αλφαριθμητικό μετά την αντικατάσταση αλλά δεν αλλάζει το αρχικό s τα αλφαριθμητικά δεν τροποποιούνται! σπάει το αλφαριθμητικό με βάση τους λευκούς χαρακτήρες. Επιστρέφει λίστα με τις λέξεις που προκύπτουν. χρήσιμο για να σπάμε κείμενο σε λέξεις Σπάει χρησιμοποιώντας το ‘-’ σαν διαχωριστικό (delimeter)

Μέθοδοι Αλφαριθμητικών >>> s = 'hello' >>> s.capitalize() 'Hello' >>> s.upper() 'HELLO' >>> s 'hello' >>> s = s.upper() >>> s = s.lower() επιστρέφει το αλφαριθμητικό μετά την αντικατάσταση αλλά δεν αλλάζει το αρχικό s Αν θέλουμε να κρατήσουμε την αλλαγή θα πρέπει να την αναθέσουμε στην μεταβλητή s

Μέθοδοι Αλφαριθμητικών >>> s = " Hello " >>> s.strip() 'Hello' >>> s.lower().strip() 'hello' >>> s = 'Hello World ' >>> s.lower().strip().split() ['hello', 'world'] αφαιρεί τους λευκούς χαρακτήρεςστην αρχή και στο τέλος του string Συνδυασμός μεθόδων με εκτέλεση αλληλουχίας μεθόδων (piping)

Μέθοδοι Αλφαριθμητικών >>> s='Hello Hello World' >>> s.find('Hello') >>> s.find('Hello',1) 6 >>> s.find('Help') -1 >>> seq = ['1', '2', '3', '4', '5'] >>> sep = '+' >>> sep.join(seq) '1+2+3+4+5' επιστρέφει τη θέση της πρώτης εμφάνισης του ‘Hello’ στο s άρχισε να ψάχνεις από τη θέση 1 και μετά δηλώνει ότι το ‘Help’ δεν υπάρχει στο s συνένωση των στοιχείων της λίστας seq σε ένα αλφαριθμητικό

Που είναι το λάθος; >>> seq = ['1', '2', '3', '4', 5] >>> sep = '+’ >>> sep.join(seq) Traceback (most recent call last): File "<pyshell#106>", line 1, in <module> sep.join(seq) TypeError: sequence item 4: expected str instance, int found ΟΛΑ τα στοιχεία της λίστας πρέπει να είναι αλφαριθμητικά!

Παράδειγμα της join >>> dirs = '', 'usr', 'bin', 'env' >>> print('C:' + '\\'.join(dirs)) C:\usr\bin\env ο χαρακτήρας ‘\’

Μετατροπές >>> x = 15 >>> y = 3.5 >>> z = [1,2] >>> w = (1,2) >>> str(x) '15' >>> str(y) '3.5' >>> str(z) '[1, 2]' >>> str(w) '(1, 2)' Η εντολή str δημιουργεί ένα καινούριο String από το όρισμα που παίρνει

string formating Χρησιμοποιείται στον ορισμό η τύπωση (στοιχισμένων) αλφαριθμητικών με διαφόρους τύπους δεδομένων δηλώνει μετατροπή σε αλφαριθμητικό >>> '%s plus %s equals %s' % (1, 1, 2) '1 plus 1 equals 2' >>> from math import pi >>> 'Pi: %f...' % pi 'Pi: 3.141593...' >>> 'Very inexact estimate of pi: %i' % pi 'Very inexact estimate of pi: 3' δηλώνει μετατροπή σε float δηλώνει μετατροπή σε int

Πλάτος και ακρίβεια >>> '%10f' % pi # Field width 10 ' 3.141593' >>> '%10.2f' % pi # Field width 10, precision 2 ' 3.14' η έξοδος είναι αλφαριθμητικό πλάτους 10 >>> '%.2f' % pi # Precision 2 '3.14' >>> '%.5s' % 'Guido van Rossum' 'Guido' παραμετροποιημένο πλάτος >>> '%.*s' % (5, 'Guido van Rossum') 'Guido' ‘0’ αντί για κενά στις θέσεις που δεν χρησιμοποιούνται >>> '%010.2f' % pi '0000003.14'

Στοίχηση >>> '%-10.2f' % pi '3.14 ' στοίχηση στα αριστερά '3.14 ' >>> print(('% 5d' % 10) + '\n' + ('% 5d' % -10)) 10 -10 στοίχηση στα αριστερά θετικός: κενο, αρνητικός: - θετικός: +, αρνητικός: - >>> print(('%+5d' % 10) + '\n' + ('%+5d' % -10)) +10 -10

Παραδείγματα >>> x=1234.5678 >>> print(x) 1234.5678 >>> print('%d' % x) 1234 >>> print('%10d' % x) >>> print('%s' % x) >>> print('%10s' % x)

Παραδείγματα >>> x=1234.5678 >>> print('%9.4f' % x) 1234.568 >>> print('%10.5f' % x) 1234.56780

Παράδειγμα: τύπωμα τιμοκαταλόγου # Print a formatted price list with a given width width = int(input('Please enter width: ')) price_width = 10 item_width = width - price_width header_format = '%-*s%*s' fformat = '%-*s%*.2f' print ('=' * width) print (header_format % (item_width, 'Item', price_width, 'Price')) print ('-' * width) print (fformat % (item_width, 'Apples', price_width, 0.4)) print (fformat % (item_width, 'Pears', price_width, 0.5)) print (fformat % (item_width, 'Cantaloupes', price_width, 1.92)) print (fformat % (item_width, 'Dried Apricots (16 oz.)', price_width, 8)) print (fformat % (item_width, 'Prunes (4 lbs.)', price_width, 12))

Παράδειγμα: τύπωμα τιμοκαταλόγου Please enter width: 40 ======================================== Item Price ---------------------------------------- Apples 0.40 Pears 0.50 Cantaloupes 1.92 Dried Apricots (16 oz.) 8.00 Prunes (4 lbs.) 12.00

Αλφαριθμητικές σταθερές >>> import string >>> string.digits '0123456789' >>> string.printable '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n\r\x0b\x0c' >>> string.punctuation '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~' >>> '5' in string.digits True χρήση του string module

Αλφαριθμητικές σταθερές string.digits A string containing the digits 0–9 string.letters A string containing all letters (upper- and lowercase) string.lowercase A string containing all lowercase letters string.printable A string containing all printable characters string.punctuation A string containing all punctuation characters string.uppercase A string containing all uppercase letters