Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ

Σχετικά έγγραφα
Γλωσσική Τεχνολογία. Εισαγωγικό Φροντιστήριο

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή

Εισαγωγικό Φροντιστήριο

ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ. Εισαγωγικό Φροντιστήριο

Εισαγωγή στην Γλώσσα Προγραμματισμού Python. 12/10/16 1

Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ FILE & PROCESS HANDLING

Βασικά Στοιχεία Python 3

Εισαγωγή στον Προγραμματισμό Python Μάθημα 1: Μεταβλητές, τελεστές, είσοδος/έξοδος προγράμματος, συνθήκη ελέγχου if Νοέμβριος 2014 Χ. Αλεξανδράκη, Γ.

IT & Networking DEVELOPING Essential Python 3. Κωδικός Σεμιναρίου / Code

Γραφικά υπολογιστών Εργαστήριο 4 Εισαγωγή στις λίστες

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

PERL. Δήμος Παύλου Δημήτρης Κουζαπάς

Προγραμματισμός Ι (HY120)

Εισαγωγή στους Υπολογιστές

Αντικειμενοστρεφής Προγραμματισμός

Αντικειµενοστρεφής Προγραµµατισµός

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

Θεωρία Πληροφορίας - Κώδικες. Γιαννακόπουλος Θεόδωρος

ΕΠΛ131 Αρχές Προγραμματισμού

Προγραμματισμός Υπολογιστών με C++ Φύλλο Διαγωνίσματος Ακαδημαϊκό εξάμηνο: Χειμερινό

Γλώσσα προγραμματισμού python

Κεφάλαιο Πίνακες Ι. (Διάλεξη 16)

alpha Language age (3/5) alpha Language Φροντιστήριο Syntax Directed Translation and

ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΑΤΙΣΜΟΣ Α (C++) ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΤΩΝ Δρ. Νικόλαος Ζ. Ζάχαρης

Βασικές Ασκήσεις από τα Εργαστήρια της PYTHON (εβδομάδα 5)

Προγραμματισμός Ι (HY120)

Εισαγωγή στους Υπολογιστές

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Εισαγωγή στον Προγραμματισμό

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

ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Ενότητα 5: «Εισαγωγή στον Προγραμματισμό. Απλές ασκήσεις με γλώσσα C»

Java sessions. Part 1 - Βασικά έννοιες - μέθοδοι

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ. Τεχνικές NLP Σχεδιαστικά Θέματα

Προγραμματιστικά Εργαλεία και Τεχνολογίες για Επιστήμη Δεδομένων

Προγραμματισμός Υπολογιστών Τάξη Γ Αθανασιάδης Χρήστος ΠΕ19 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Τύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( )

Δομημένος Προγραμματισμός

Παράλληλη Επεξεργασία

Μεθόδων Επίλυσης Προβλημάτων

Σημειωματάριο Τετάρτης 25 Οκτ. 2017

H κλάση ArrayList. Γιώργος Θάνος. Γραφείο Γ. Γκλαβάνη 37. Αντικει ενοστραφής Προγρα. ος όροφος

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αναζήτηση και Ταξινόμηση Χειμερινό Εξάμηνο 2016

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

File Handling & I/O ΓΛΩΣΣΙΚΉ ΤΕΧΝΟΛΟΓΊΑ

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Προγραμματισμός Η/Υ (ΤΛ2007 )

Λειτουργικά Συστήματα

Θέματα Προγραμματισμού Η/Υ

Σημειώσεις όγδοης εβδομάδας

Φύλλο Εργασίας 3. Μια γρήγορη επανάληψη από τα προηγούμενα

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Εισαγωγή στην Python. Διάλεξη 0

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Βασικά Στοιχεία της Java

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Παράλληλη Επεξεργασία

Τεχνολογία και Προγραμματισμός Υπολογιστών. Η γλώσσα προγραμματισμού C

Προγραμματισμός σε C. Πράξεις με bits (bitwise operators)

Κεφάλαιο Πίνακες Ι. ( ιάλεξη 15) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Εισαγωγή στην Python Χειμερινό Εξάμηνο 2016

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων

Προγραμματισμός Ι (ΗΥ120)

Εργαστήριο 2: Πίνακες

Εισαγωγή στον Προγ/μό Υπολογιστών

Εισαγωγή στην Python C++ Java. Python. Το πρόγραμμα Hello world σε τρείς γλώσσες προγραμματισμού

Αλγόριθμοι Ταξινόμησης Μέρος 1

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Εισαγωγή στην Python Χειµερινό Εξάµηνο 2014

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων. 14. Πίνακες Ι. Ιωάννης Κατάκης. ΕΠΛ 032: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων

Διάλεξη 18η: Διαχείρηση Αρχείων

Γλωσσική Τεχνολογία. Object-Orientation in Python

Μεθόδων Επίλυσης Προβλημάτων

Εισαγωγή στον Προγ/μό Υπολογιστών

Προγραμματισμό για ΗΜΥ

ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου.

Δομές ελέγχου ροής προγράμματος

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

Computing. Νοέμβριος Έκδοση 1.0

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

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

Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #7

Εισαγωγή στον Προγραμματισμό Μάθημα 4: Αλγόριθμοι και Γλώσσες Προγραμματισμού Δεκέμβριος 2015 Χ. Αλεξανδράκη

Απλές Δοµές Δεδοµένων Στην ενότητα αυτή θα γνωρίσουµε ορισµένες απλές Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε για την αποδοτική επίλυση του προβλή

Εισαγωγή στον Προγραμματισμό

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 4

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Η/Υ (ΤΛ2007 )

Σημειωματάριο Τετάρτης 18 Οκτ. 2017

ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου.

Φροντιςτήριο. Linked-List

Διορθώσεις σελ

ΚΑΛΑΝΙΔΟΥ ΓΑΛΗΝΗ ΚΑΝΑΚΟΥΣΑΚΗ ΜΑΡΙΑ

Transcript:

Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ

Project του μαθήματος Εργασία 2 ατόμων Προφορική εξέταση για: Project (80%) Θεωρία (20%) Στο φροντιστήριο: Συζητάμε σχεδιαστικές επιλογές Λύνουμε ζητήματα υλοποίησης Παρουσιάζουμε διαθέσιμα εργαλεία Οι αλγόριθμοι και οι έννοιες παρουσιάζονται στο μάθημα Γλώσσα υλοποίησης της επιλογής σας αλλά: Το φροντιστήριο θα γίνει σε Python 2.6.5 Θα σας διευκολύνουν εργαλεία που υπάρχουν σε Python 2.6.5

Γιατί Python; Εύκολη! Θα τη μάθετε αμέσως. Χρειάζεται να γράψετε πολύ λιγότερο κώδικα. (Ο χρόνος development είναι 10 φορές μικρότερος) Είναι scripting, παρόλα αυτά αρκετά γρήγορη. (Implemented in C) Ο κώδικας σε Python είναι μικρότερος και πιο «καθαρός», εύκολος να διαβαστεί και να κατανοηθεί. (Τα blocks κώδικα ορίζονται από κενά) Cross-Platform: Μπορείτε να προγραμματίσετε σε Windows ή Linux Υπάρχουν πολλά και δωρεάν διαθέσιμα resources στο δίκτυο για να διαβάσετε. Υπάρχει σε Python το NLTK (Natural Language Toolkit), το οποίο περιλαμβάνει ήδη υλοποιημένα εργαλεία για Γλωσσική Τεχνολογία!!!

Θέματα Φροντιστηρίου Επεξηγήσεις θεωρητικών εννοιών που αφορούν στο project Παρουσίαση διαθέσιμων εργαλείων Εισαγωγή στην Python Σχεδιαστικές επιλογές με έμφαση στην απόδοση Ζητήματα υλοποίησης Παρουσίαση της Python Επεξηγήσεις στο project

Python High Level Scripting Elegant Syntax Interpreted Object Oriented Functional Dynamic Typing Automatic Memory Management

My First Program print Hello World! Αντί για: #include <stdio.h> int main(int argc, char** argv) { printf( HelloWorld!\n ); }

Python Features I Data Types boolean, integer, float, long, complex Δεν ορίζονται ρητά. Καθορίζεται ο τύπος στον χρόνο εκτέλεσης. Sequence Types string, list, tuple Mapping Types dictionary

Python Features II Control Flow if, for, while, break, continue Functions def foo(): Classes class foo(): Modules from module import something import module

Python Features III Error/Exception Handling File I/O HTML/XML Parsing και πολλά περισσότερα..

Interactive Mode

Από που να διαβάσω; Python Documentation http://docs.python.org/tutorial/index.html Dive into Python http://diveintopython.org/ TasPython http://taspython.eu/ effbot.org http://effbot.org/ Google http://www.google.com

Που να γράψω κώδικα; Editors IDEs Windows Notepad etc. Linux Gedit etc. Windows Active Python Netbeans Linux Eclipse Netbeans

Native Datatypes Lists #1 Η λίστες είναι ο τύπος δεδομένων που χρησιμοποιείται περισσότερο στην Python Είναι arrays, των οποίων το μέγεθος αλλάζει δυναμικά όσο προστίθενται στοιχεία. Τα στοιχεία δεν είναι απαραίτητο να είναι του ίδιου τύπου δεδομένων! Ορισμός Λίστας >>>a = ['spam', 'eggs', 100, 1234] >>>a ['spam', 'eggs', 100, 1234]

Native Datatypes Lists #2 Αναφορά στα στοιχεία της λίστας Index a[0],a[1],,a[len-2], a[len-1] Negative index a[-len],a[-(len-1)],, a[-1] Προσθήκη στοιχείων >>>a.append(333) >>>a ['spam', 'eggs', 100, 1234, 333] >>>a.insert(2,-1) >>>a ['spam', 'eggs', -1, 100, 1234, 333] >>>a.extend([1,2]) >>>a ['spam', 'eggs', -1, 100, 1234, 333, 1, 2]

Native Datatypes Lists #3 Διαγραφή στοιχείων >>>a.pop() >>>a ['spam', 'eggs', -1, 100, 1234] >>>a.remove(-1) >>>a ['spam', 'eggs', 100, 1234] >>>del a[1] >>a ['spam', 100, 1234] Αναζήτηση >>>'spam' in a: True >>>'cat' in a: False

Native Datatypes Lists #4 Απαρίθμηση >>>for i in a:... print i... 'spam' 100 1234 >>>for i in range(len(a)):... print i, a[i] 0,'spam' 1,100 2,1234

Native Datatypes - Dictionaries #1 Τα dictionaries ορίζουν σχέσεις μεταξύ κλειδιών και τιμών. Πρόκειται για συλλογές εγγραφών που αποτελούνται από ένα κλειδί και την τιμή που αντιστοιχεί σε αυτό. Ορισμός Dictionary >>>tel = {'jack': 4098, 'sape': 4139} >>>tel {'jack': 4098, 'sape': 4139} Αναφορά στα στοιχεία >>>tel['jack'] 4098

Native Datatypes - Dictionaries #2 Προσθήκη στοιχείων >>> tel['guido'] = 4127 >>> tel {'sape': 4139, 'guido': 4127, 'jack': 4098} Διαγραφή στοιχείων >>> del tel['sape'] >>>tel {'guido': 4127, 'jack': 4098}

Native Datatypes - Dictionaries #3 Αναζήτηση >>>'guido' in tel True >>>'sape' in tel False Απαρίθμηση >>>for k,v in tel.items():... print k,v 'guido', 4127 'jack', 4098

Native Datatypes Tuples #1 Μια tuple είναι μια λίστα που δεν αλλάζει. Η τιμές που περιέχει μια tuple δεν μπορούν να αλλάξουν μετά τη δημιουργία της. Ορισμός Tuple >>> t = ("Mon", "Tue", "Thu", "Wed", "Fri", "Sat", "Sun") >>> t ('Mon', 'Tue', 'Thu', 'Wed', 'Fri', 'Sat', 'Sun ) Αναφορά στα στοιχεία της tuple Index t[0],t[1],,t[len-2], t[len-1] Negative index t[-len],t[-(len-1)],, t[-1]