Μάθημα 0 - Εισαγωγή

...ασύγχρονα μαθήματα python

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό midkin » 10 Σεπ 2009, 00:23

@ftso, @cyberpython

Σας ευχαριστώ πολύ για τις διευκρινήσεις σας. :clap:
Αφού διάβασα όσα μου γράψατε και ξανά διάβασα το κεφάλαιο που δεν είχα καταλάβει, ξεδιάλυναν αρκετά τα πράγματα!

Οπότε συνεχίζω με το Μάθημα 1 και ο θεός βοηθός! :angel:
Γνώσεις ⇛ Linux: Χαμηλό ┃ Προγραμματισμός: Χαμηλό ┃ Αγγλικά: Πολύ Καλά
Λειτουργικό: Laptop Lenovo G505s με Windows 8.1 / Ubuntu 14.10 & Mac OS X 10.10 μέσω VirtualBox
Προδιαγραφές ⇛ AMD A8 τετραπύρηνος │ 8 GB RAM |
Άβαταρ μέλους
midkin
babeTUX
babeTUX
 
Δημοσιεύσεις: 44
Εγγραφή: 05 Σεπ 2009, 21:14
Τοποθεσία: Κομοτηνή
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό medigeek » 10 Σεπ 2009, 01:29

Προτείνω να χρησιμοποιείς το "#!/usr/bin/python3" - του λες κατ' ευθείαν ποιο python να χρησιμοποιήσει:
- από συγκεκριμένο φάκελο στον οποίο εγκατέστησες το python (π.χ. σε κάποιους μπορεί να είναι "#!/usr/local/bin/python3.0") ή ακόμη και στον προσωπικό τους φάκελο (αν το έθεσαν οι ίδιοι κατα την εγκατάσταση).
- με συγκεκριμένη έκδοση.

Για να δεις ποια python έχεις εγκατεστημένα εκτελείς στο τερματικό (terminal / konsole):
Κώδικας: Επιλογή όλων
whereis -b python | sed -e 's/ /\n/g' | grep usr/bin


έγραψε:$ whereis -b python | sed -e 's/ /\n/g' | grep usr/bin
/usr/bin/python3.0
/usr/bin/python
/usr/bin/python2.6-config
/usr/bin/python2.6
/usr/bin/python3.1
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό midkin » 10 Σεπ 2009, 07:23

Κάτι ακόμη.
Όταν πατήσω στο τερματικό να εκτελεστεί ένα πρόγραμμα, π.χ. python3 program.py , αλλά το πρόγραμμα αυτό δεν βρίσκεται στον προσωπικό μου φάκελο, τότε η python θα αρχίσει να το ψάχνει στις διαδρομές της PATH αυτόματα ή πρέπει να ενσωματώσω ένα μέρος κώδικα μέσα στο ίδιο το πρόγραμμα ώστε να του δώσω να καταλάβει πως θέλω να το αναζητά σε όλες τις διαδρομές της PATH;

Ευχαριστώ.
Γνώσεις ⇛ Linux: Χαμηλό ┃ Προγραμματισμός: Χαμηλό ┃ Αγγλικά: Πολύ Καλά
Λειτουργικό: Laptop Lenovo G505s με Windows 8.1 / Ubuntu 14.10 & Mac OS X 10.10 μέσω VirtualBox
Προδιαγραφές ⇛ AMD A8 τετραπύρηνος │ 8 GB RAM |
Άβαταρ μέλους
midkin
babeTUX
babeTUX
 
Δημοσιεύσεις: 44
Εγγραφή: 05 Σεπ 2009, 21:14
Τοποθεσία: Κομοτηνή
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό cyberpython » 10 Σεπ 2009, 13:08

Για να γίνει αυτόματη αναζήτηση του προγράμματός σου στις τοποθεσίες που περιέχονται στο PATH, κάνεις το αρχείο σου εκτελέσιμο δίνοντας του τα κατάλληλα δικαιώματα και προσθέτοντας τη γραμμή
Κώδικας: Επιλογή όλων
#!/usr/bin/python3
. Έπειτα, απλά δίνεις το όνομα του αρχείου σε ένα τερματικό και αν βρεθεί στο path θα εκτελεστεί.
Κοινότητα ΕΛ/ΛΑΚ Οικονομικού Πανεπιστημίου Αθηνών / Ubuntu-gr / My Web Log
Επίπεδο Γνώσεων Linux: Μέτριο, Προγραμματισμός: Ναι, Aγγλικά: Καλά
Λειτουργικό : Ubuntu 10.04 - 32bits
Η/Υ : Intel Core2 4400@2 GHz / 2GB DDR2 RAM / GeForce 8400 GS 512MB / Creative SB Audigy SE
Άβαταρ μέλους
cyberpython
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 733
Εγγραφή: 14 Μάιος 2008, 13:22
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό midkin » 14 Σεπ 2009, 00:36

Έχω κάποιες ερωτήσεις που μου δημιουργήθηκαν μετά από τριβή με την python και το τερματικό.

1) Γιατί βάζετε πριν από commands του τερματικού το σύμβολο '$' ενώ το τερματικό δεν το αναγνωρίζει;

2) Αν θέλω να τρέξω ένα πρόγραμμα python, το οποίο έχω ήδη κάνει εκτελέσιμο (chmod a+x 123.py) και έχω προσθέσει στην πρώτη σειρά του προγράμματος το #!\us\bin\python3, από την επιφάνεια εργασίας θα πρέπει να προσθέσω την διαδρομή της επιφάνειας εργασίας στην PATH; (PATH=$PATH: /home/user/Desktop)
Αν το κάνω θα μπορώ να πατάω στο τερματικό "python3 123.py" και να τρέχει το πρόγραμμα και από την επιφάνεια εργασίας;

3) Πως μπορώ να εκτελέσω ένα πρόγραμμα της python με διπλό click; Ενώ από το τερματικό τρέχουν, με διπλό click και εκτέλεση δεν τρέχουν, γιατί;

4) Εάν το πρόγραμμα που σκοπεύω να φτιάξω θέλω να τρέχει και σε άλλους υπολογιστές είναι καλύτερα να χρησημοποιώ το #!\usr\bin\env python3 από το #!\usr\bin\python3 ;

5) Και μία πέμπτη που μου ήρθε πριν φύγω για δουλειά. Στη τρίτη λυκείου είχα διδαχθεί τον ψευδοκώδικα της pascal και αργότερα ασχολήθηκα και ελάχιστα με αυτή. Στην pascal λοιπόν σε κάθε πρόγραμμα δηλώναμε κάθε μεταβλητή πριν αρχίσουμε να γράφουμε το πρόγραμμα αυτό καθ' αυτό. Στην python δεν υπάρχει κάτι αντίστοιχο;

Ευχαριστώ εκ των προτέρων.
Γνώσεις ⇛ Linux: Χαμηλό ┃ Προγραμματισμός: Χαμηλό ┃ Αγγλικά: Πολύ Καλά
Λειτουργικό: Laptop Lenovo G505s με Windows 8.1 / Ubuntu 14.10 & Mac OS X 10.10 μέσω VirtualBox
Προδιαγραφές ⇛ AMD A8 τετραπύρηνος │ 8 GB RAM |
Άβαταρ μέλους
midkin
babeTUX
babeTUX
 
Δημοσιεύσεις: 44
Εγγραφή: 05 Σεπ 2009, 21:14
Τοποθεσία: Κομοτηνή
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό da_perama1 » 14 Σεπ 2009, 08:25

1.
Το $ είναι το prompt του bash shell, του κελύφους δηλαδή του τερματικού. Δεν χρειάζεται δηλαδή να το γράφεις.
2.
Ναι αν το αρχείο βρίσκεται στο .../Desktop, αλλά γιατί δεν το δοκιμάζεις ;
5.
Αυτό είναι ένα από τα χαρακτηριστικά της python. Δεν χρειάζεται να δηλώσεις μια μεταβλητή πριν την χρησιμοποιήσεις.
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.04 precise 64bit (el_GR.UTF-8), Ubuntu 3.0.0-17-generic
3 Intel Core i5 CPU 650 3.20GHz ‖ RAM 7783 MiB ‖ Intel DH55TC -
4 Intel Core Processor Integrated Graphics Controller [8086:0042] (rev 02)
5 eth0: Intel 82578DC Gigabit Network Connection [8086:10f0] (rev 06)
da_perama1
punkTUX
punkTUX
 
Δημοσιεύσεις: 289
Εγγραφή: 11 Νοέμ 2008, 20:35
Τοποθεσία: Κέρκυρα
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό sokoban4ever » 14 Σεπ 2009, 11:27

@midkin
3 αν το κάνεις εκτελέσιμο όπως ανάφερες παραπάνω τότε με διπλό κλίκ ( σε gnome ) θα σου δείχνει ακριβώς αυτό
Εικόνα
οπότε μπορείς να διαλέξεις τι να κάνεις από τα κουμπάκια :)
4. Ε βέβαια γιατί αν κάποιος έχει αλλού την python εγκατεστημένη έτσι :arrow: #!\usr\bin\env python3 θα την βρει το shell και θα παίξει το πρόγραμμα ;)
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό midkin » 14 Σεπ 2009, 16:58

sokoban4ever έγραψε:
3 αν το κάνεις εκτελέσιμο όπως ανάφερες παραπάνω τότε με διπλό κλίκ ( σε gnome ) θα σου δείχνει ακριβώς αυτό
Εικόνα
οπότε μπορείς να διαλέξεις τι να κάνεις από τα κουμπάκια :)


Μου βγαίνει αυτό το παράθυρο αλλά όταν πατάω "Εκτέλεση" ή "Εκτέλεση σε τερματικό" απλά δεν γίνεται τίποτα!!! :/
Γνώσεις ⇛ Linux: Χαμηλό ┃ Προγραμματισμός: Χαμηλό ┃ Αγγλικά: Πολύ Καλά
Λειτουργικό: Laptop Lenovo G505s με Windows 8.1 / Ubuntu 14.10 & Mac OS X 10.10 μέσω VirtualBox
Προδιαγραφές ⇛ AMD A8 τετραπύρηνος │ 8 GB RAM |
Άβαταρ μέλους
midkin
babeTUX
babeTUX
 
Δημοσιεύσεις: 44
Εγγραφή: 05 Σεπ 2009, 21:14
Τοποθεσία: Κομοτηνή
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό cyberpython » 14 Σεπ 2009, 18:18

midkin έγραψε:
sokoban4ever έγραψε:
3 αν το κάνεις εκτελέσιμο όπως ανάφερες παραπάνω τότε με διπλό κλίκ ( σε gnome ) θα σου δείχνει ακριβώς αυτό
Εικόνα
οπότε μπορείς να διαλέξεις τι να κάνεις από τα κουμπάκια :)


Μου βγαίνει αυτό το παράθυρο αλλά όταν πατάω "Εκτέλεση" ή "Εκτέλεση σε τερματικό" απλά δεν γίνεται τίποτα!!! :/


Το πρόγραμμά σου τρέχει κανονικά, απλά δεν το βλέπεις εσύ να τρέχει. Π.χ. αν τρέξεις το παρακάτω πρόγραμμα θα δεις οτι θα δημιουργηθεί το αρχείο test001.txt στο home folder σου:
Κώδικας: Επιλογή όλων

#!/usr/bin/env python3
import os
target = os.path.join(os.path.expanduser("~"), 'test001.txt')
print(target)
f = open(target, 'w')
f.write("Hello")
f.close()
Κοινότητα ΕΛ/ΛΑΚ Οικονομικού Πανεπιστημίου Αθηνών / Ubuntu-gr / My Web Log
Επίπεδο Γνώσεων Linux: Μέτριο, Προγραμματισμός: Ναι, Aγγλικά: Καλά
Λειτουργικό : Ubuntu 10.04 - 32bits
Η/Υ : Intel Core2 4400@2 GHz / 2GB DDR2 RAM / GeForce 8400 GS 512MB / Creative SB Audigy SE
Άβαταρ μέλους
cyberpython
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 733
Εγγραφή: 14 Μάιος 2008, 13:22
Εκτύπωση

Re: Μάθημα 0 - Εισαγωγή

Δημοσίευσηαπό midkin » 14 Σεπ 2009, 19:45

Μπορείτε να μου δώσετε τον τρόπο σύνταξης της .bashrc ;
Αν θέλω να προσθέσω στην PATH τη διαδρομή "/home/user/Desktop", τι ακριβώς πρέπει να γράψω στο τερματικό;
Αν στη συνέχεια θέλω να σβήσω τη διαδρομή "/home/user/Desktop" από την PATH, τι γράφω;

Τέλος, αν δεν θέλω μία διαδρομή να προστίθεται στην PATH μόνιμα αλλά μόνο για την εκτέλεση ενός προγράμματος, υπάρχει κάποιος κώδικας που μπορώ να γράψω στην python έτσι ώστε όταν εκτελείτε το πρόγραμμα να προσθέτει μία διαδρομή στην PATH και μόλις η εκτέλεση του ολοκληρώνεται να διαγράφεται αυτόματα από την PATH; Δεν θέλω να πατάω στο τερματικό PATH=$PATH .... θέλω να γίνεται μέσω του προγράμματος.

Ευχαριστώ και πάλι.(!)
Γνώσεις ⇛ Linux: Χαμηλό ┃ Προγραμματισμός: Χαμηλό ┃ Αγγλικά: Πολύ Καλά
Λειτουργικό: Laptop Lenovo G505s με Windows 8.1 / Ubuntu 14.10 & Mac OS X 10.10 μέσω VirtualBox
Προδιαγραφές ⇛ AMD A8 τετραπύρηνος │ 8 GB RAM |
Άβαταρ μέλους
midkin
babeTUX
babeTUX
 
Δημοσιεύσεις: 44
Εγγραφή: 05 Σεπ 2009, 21:14
Τοποθεσία: Κομοτηνή
Εκτύπωση

ΠροηγούμενηΕπόμενο

Επιστροφή στο Μαθήματα python