Τα πάντα για την Python

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

Re: Τα πάντα για την Python

Δημοσίευσηαπό pmav99 » 27 Οκτ 2012, 22:52

Δε νομίζω να γίνεται με χρήση μόνο της standard library. Θα μπορούσες να χρησιμοποιήσεις κάποιο command line utility όπως το pdf2text ή κάτι παρόμοιο, αλλά και αυτό προσθέτει κάποιο dependency.
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό asvos » 13 Ιαν 2013, 01:53

Καλησπέρα.
Δεν ξέρω αν είναι πρόβλημα και αν πρέπει να ανυσηχώ αλλά,
δίνοντας την εντολή
Κώδικας: Επιλογή όλων
python -v

στο τερματικό μου έβγαλε ολόκληρο κατεβατό που δεν ξέρω τι στο καλό είναι.
Κώδικας: Επιλογή όλων
$ python -v
# installing zipimport hook
import zipimport # builtin
# installed zipimport hook
# /usr/lib/python2.7/site.pyc matches /usr/lib/python2.7/site.py
import site # precompiled from /usr/lib/python2.7/site.pyc
# /usr/lib/python2.7/os.pyc matches /usr/lib/python2.7/os.py
import os # precompiled from /usr/lib/python2.7/os.pyc
import errno # builtin
import posix # builtin
# /usr/lib/python2.7/posixpath.pyc matches /usr/lib/python2.7/posixpath.py
import posixpath # precompiled from /usr/lib/python2.7/posixpath.pyc
# /usr/lib/python2.7/stat.pyc matches /usr/lib/python2.7/stat.py
import stat # precompiled from /usr/lib/python2.7/stat.pyc
# /usr/lib/python2.7/genericpath.pyc matches /usr/lib/python2.7/genericpath.py
import genericpath # precompiled from /usr/lib/python2.7/genericpath.pyc
# /usr/lib/python2.7/warnings.pyc matches /usr/lib/python2.7/warnings.py
import warnings # precompiled from /usr/lib/python2.7/warnings.pyc
# /usr/lib/python2.7/linecache.pyc matches /usr/lib/python2.7/linecache.py
import linecache # precompiled from /usr/lib/python2.7/linecache.pyc
# /usr/lib/python2.7/types.pyc matches /usr/lib/python2.7/types.py
import types # precompiled from /usr/lib/python2.7/types.pyc
# /usr/lib/python2.7/UserDict.pyc matches /usr/lib/python2.7/UserDict.py
import UserDict # precompiled from /usr/lib/python2.7/UserDict.pyc
# /usr/lib/python2.7/_abcoll.pyc matches /usr/lib/python2.7/_abcoll.py
import _abcoll # precompiled from /usr/lib/python2.7/_abcoll.pyc
# /usr/lib/python2.7/abc.pyc matches /usr/lib/python2.7/abc.py
import abc # precompiled from /usr/lib/python2.7/abc.pyc
# /usr/lib/python2.7/_weakrefset.pyc matches /usr/lib/python2.7/_weakrefset.py
import _weakrefset # precompiled from /usr/lib/python2.7/_weakrefset.pyc
import _weakref # builtin
# /usr/lib/python2.7/copy_reg.pyc matches /usr/lib/python2.7/copy_reg.py
import copy_reg # precompiled from /usr/lib/python2.7/copy_reg.pyc
# /usr/lib/python2.7/traceback.pyc matches /usr/lib/python2.7/traceback.py
import traceback # precompiled from /usr/lib/python2.7/traceback.pyc
# /usr/lib/python2.7/sysconfig.pyc matches /usr/lib/python2.7/sysconfig.py
import sysconfig # precompiled from /usr/lib/python2.7/sysconfig.pyc
# /usr/lib/python2.7/re.pyc matches /usr/lib/python2.7/re.py
import re # precompiled from /usr/lib/python2.7/re.pyc
# /usr/lib/python2.7/sre_compile.pyc matches /usr/lib/python2.7/sre_compile.py
import sre_compile # precompiled from /usr/lib/python2.7/sre_compile.pyc
import _sre # builtin
# /usr/lib/python2.7/sre_parse.pyc matches /usr/lib/python2.7/sre_parse.py
import sre_parse # precompiled from /usr/lib/python2.7/sre_parse.pyc
# /usr/lib/python2.7/sre_constants.pyc matches /usr/lib/python2.7/sre_constants.py
import sre_constants # precompiled from /usr/lib/python2.7/sre_constants.pyc
# /usr/lib/python2.7/sitecustomize.pyc matches /usr/lib/python2.7/sitecustomize.py
import sitecustomize # precompiled from /usr/lib/python2.7/sitecustomize.pyc
import encodings # directory /usr/lib/python2.7/encodings
# /usr/lib/python2.7/encodings/__init__.pyc matches /usr/lib/python2.7/encodings/__init__.py
import encodings # precompiled from /usr/lib/python2.7/encodings/__init__.pyc
# /usr/lib/python2.7/codecs.pyc matches /usr/lib/python2.7/codecs.py
import codecs # precompiled from /usr/lib/python2.7/codecs.pyc
import _codecs # builtin
# /usr/lib/python2.7/encodings/aliases.pyc matches /usr/lib/python2.7/encodings/aliases.py
import encodings.aliases # precompiled from /usr/lib/python2.7/encodings/aliases.pyc
# /usr/lib/python2.7/encodings/utf_8.pyc matches /usr/lib/python2.7/encodings/utf_8.py
import encodings.utf_8 # precompiled from /usr/lib/python2.7/encodings/utf_8.pyc
Python 2.7.3 (default, Aug 1 2012, 05:16:07)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
dlopen("/usr/lib/python2.7/lib-dynload/readline.so", 2);
import readline # dynamically loaded from /usr/lib/python2.7/lib-dynload/readline.so


Μπορει κάποιος να μου εξηγήσει τι ακριβώς έγινε;
Πρέπει να ανησυχώ η απλά εγκαταστάθηκαν τα απαραίτητα;;;;; :?

Μήπως παίζει ρόλλο το ότι έτρεξα το glade πρίν απ'αυτό;
Spoiler: show
Γνώσεις ⇛ Linux: Λίγες ┃ Προγραμματισμός: Λίγες ┃ Αγγλικά: Μέτρια.
NetBook
Linux Lite σε Netbook Aser Aspireone.

Desktop
Ubuntu 19.04
Intel Core i7 CPU 920 2.67GHz ‖ RAM 11,7 GiB ‖ Gigabyte EX58-UD3R
nVidia GK107 [GeForce GT 630] {}
eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller)
Άβαταρ μέλους
asvos
dudeTUX
dudeTUX
 
Δημοσιεύσεις: 388
Εγγραφή: 28 Φεβ 2010, 18:34
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό Ilias95 » 13 Ιαν 2013, 02:23

Την ίδια έξοδο έχω κι' εγώ.

Η -v option κάνει...
Κώδικας: Επιλογή όλων
ilias@ilias-pc ~ ➜ python -h | grep -w -A1 \\-v
-v : verbose (trace import statements); also PYTHONVERBOSE=x
can be supplied multiple times to increase verbosity
ilias@ilias-pc ~ ➜
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό asvos » 13 Ιαν 2013, 02:31

Ilias95 έγραψε:Την ίδια έξοδο έχω κι' εγώ.


Thanks!
Οπότε κοιμάμαι ήσυχος. :D
Spoiler: show
Γνώσεις ⇛ Linux: Λίγες ┃ Προγραμματισμός: Λίγες ┃ Αγγλικά: Μέτρια.
NetBook
Linux Lite σε Netbook Aser Aspireone.

Desktop
Ubuntu 19.04
Intel Core i7 CPU 920 2.67GHz ‖ RAM 11,7 GiB ‖ Gigabyte EX58-UD3R
nVidia GK107 [GeForce GT 630] {}
eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller)
Άβαταρ μέλους
asvos
dudeTUX
dudeTUX
 
Δημοσιεύσεις: 388
Εγγραφή: 28 Φεβ 2010, 18:34
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό Charval » 27 Ιαν 2013, 10:36

Καλημέρα σε όλους! Σήμερα έκανα τα πρώτα δειλά βηματάκια μου στην Python. Πέρασα από την κλασσική αξία του 'Hello World' και έπειτα έφτιαξα το πρώτο προγραμματάκι επίλυσης δευτεροβαθμίων εξισώσεων.
ΌΜΩΣ, ενώ έχω εγκαταστήσει την Python3, όταν ανοίγω terminal και πατώ: Python3 και έπειτα Python3 name.py ώστε να τρέξει το πρόγραμμα, εμφανίζεται το παρακάτω μήνυμα λάθους:

Εικόνα

Όταν γράφω κατευθείαν Python3 name.py εμφανίζεται πάλι μήνυμα λάθους ότι δεν υπάρχει τέτοιο αρχείο ή directory.

Το αρχείο .py βρίσκεται στον φάκελο charitos.

Ευχαριστώ εκ των προτέρων!
Charval
babeTUX
babeTUX
 
Δημοσιεύσεις: 7
Εγγραφή: 27 Ιαν 2013, 10:19
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό Ilias95 » 27 Ιαν 2013, 11:15

@Charval
Είναι λογικό να παίρνεις SyntaxError απ' τον interpreter της python μιας και δέχεται μόνο εντολές python και αυτή που δίνεις είναι εντολή κελύφους.

Σιγουρέψου ότι το test.py είναι στον φάκελο στο οποίο δίνεις την εντολή "python3 test.py" (και όχι "Python3 test.py").
Δώσε καλύτερα την έξοδο απ' τον bash, δίνοντας πρώτα μια "ls" και μετά την "python3 test.py".

Εναλλακτικά μπορείς να δηλώσεις στο shebang να τρέχει με python3.
Δηλαδή στην 1η γραμμή του αρχείου σου θα γράψεις αυτό:
Κώδικας: Επιλογή όλων
#!/usr/bin/env python3

Μετά θα κάνεις το αρχείο εκτελέσιμο:
Κώδικας: Επιλογή όλων
chmod +x test.py

Και τελικά θα το τρέξεις με:
Κώδικας: Επιλογή όλων
./test.py
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό kamar » 27 Ιαν 2013, 18:41

Charval έγραψε:Καλημέρα σε όλους! Σήμερα έκανα τα πρώτα δειλά βηματάκια μου στην Python. Πέρασα από την κλασσική αξία του 'Hello World' και έπειτα έφτιαξα το πρώτο προγραμματάκι επίλυσης δευτεροβαθμίων εξισώσεων.
ΌΜΩΣ, ενώ έχω εγκαταστήσει την Python3, όταν ανοίγω terminal και πατώ: Python3 και έπειτα Python3 name.py ώστε να τρέξει το πρόγραμμα, εμφανίζεται το παρακάτω μήνυμα λάθους:

Εικόνα

Όταν γράφω κατευθείαν Python3 name.py εμφανίζεται πάλι μήνυμα λάθους ότι δεν υπάρχει τέτοιο αρχείο ή directory.

Το αρχείο .py βρίσκεται στον φάκελο charitos.

Ευχαριστώ εκ των προτέρων!


Εναλλακτικά αν το αρχείο test.py βρίσκεται στον τρέχοντα κατάλογο μπορείς να το κάνεις import
Κώδικας: Επιλογή όλων
import test

και να τρέξεις τις συναρτήσεις που έχεις φτιάξει.
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 14.04 trusty 3.13.0-91-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD A6-5400K APU with Radeon HD Graphics ‖ RAM 3347 MiB ‖ ASUS F2A55-M LK2 PLUS
4 Advanced Micro Devices, Inc. [AMD/ATI] Trinity [Radeon HD 7540D] [1002:9991] {radeon}
5 eth0: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 09)
Άβαταρ μέλους
kamar
punkTUX
punkTUX
 
Δημοσιεύσεις: 166
Εγγραφή: 10 Μάιος 2008, 20:24
Τοποθεσία: Χανιά
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό Charval » 27 Ιαν 2013, 19:16

Παιδιά, σας ευχαριστώ πολύ για τις απαντήσεις σας, το αρχικό πρόβλημα λύθηκε. Όμως κάτι συμβαίνει και η εκτέλεση του προγράμματος διακόπτεται.

Παραθέτω καταρχάς τον κώδικα:
Κώδικας: Επιλογή όλων
#!/usr/bin/python3

# -*- coding: utf8 -*-

print ("Welcome to 'Quadratic' solving program.")

a = input("Please, input the first coefficient: ")

while a == 0:
a = input("Be careful! That, is not a quadratic equation. Please, input a non-zero coefficient: ")

b = input("Now, input the second coefficient: ")

c = input("Now, input the constant: ")

from math import sqrt

D = b**2 + (-4)*a*c

if D > 0:
print ("The value of the determinant is: ", D, "and the two real solutions are: ", (-b+sqrt(D))/2*a, (-b-sqrt(D))/2*a)
elif D == 0:
print ("Determinant equals to zero, so we have a double real root: ", (-b)/2*a)
else:
print ("Negative determinant. Two complex solutions: ", complex ((-b)/2*a, sqrt(-D)/2*a), complex ((-b)/2*a, (-sqrt(-D)/2*a)))

print ("Thank you for using Quadratic!")


ο οποίος κατά την εκτέλεση στο terminal εντοπίζει error κάπου στη διακρίνουσα D και δεν καταλαβαίνω γιατί. :thumbdown:

Εικόνα
Charval
babeTUX
babeTUX
 
Δημοσιεύσεις: 7
Εγγραφή: 27 Ιαν 2013, 10:19
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό the_eye » 27 Ιαν 2013, 19:26

:idea: Για κώδικα σε κάποια γλώσσα προγραμματισμού καλύτερα να χρησιμοποιείτε το bbcode z_code θα το βρείτε στα Άλλα BBcodes.
Δείτε το αποτέλεσμα. :idea:

Μορφοποιημένος Κώδικας: Επιλογή όλων
#!/usr/bin/python3

# -*- coding: utf8 -*-

print ("Welcome to 'Quadratic' solving program.")

a = input("Please, input the first coefficient: ")

while a == 0:
a = input("Be careful! That, is not a quadratic equation. Please, input a non-zero coefficient: ")

b = input("Now, input the second coefficient: ")

c = input("Now, input the constant: ")

from math import sqrt

D = b**2 + (-4)*a*c

if D > 0:
print ("The value of the determinant is: ", D, "and the two real solutions are: ", (-b+sqrt(D))/2*a, (-b-sqrt(D))/2*a)
elif D == 0:
print ("Determinant equals to zero, so we have a double real root: ", (-b)/2*a)
else:
print ("Negative determinant. Two complex solutions: ", complex ((-b)/2*a, sqrt(-D)/2*a), complex ((-b)/2*a, (-sqrt(-D)/2*a)))

print ("Thank you for using Quadratic!")
Όσο λιγότερο κλειστό λογισμικό έχεις, τόσα λιγότερα προβλήματα.
1 Γνώσεις ⇛ Linux: Καλό ┃ Προγραμματισμός: Ναι PHP, MySQL ┃ Αγγλικά: Καλά
2 Ubuntu 24.04.2
3 Intel Core i5-6500 CPU @ 3.20GHz ‖ RAM 7836 MiB ‖ Gigabyte B150M-HD3 DDR3-CF - Gigabyte B150M-HD3 DDR3
4 Intel HD Graphics 530 [8086:1912] {i915}
5 enp1s0: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 15)
Άβαταρ μέλους
the_eye
Διαχειριστής
Διαχειριστής
 
Δημοσιεύσεις: 11719
Εγγραφή: 16 Μαρ 2010, 17:19
Launchpad: ntoulasd
IRC: the_eye_
Εκτύπωση

Re: Τα πάντα για την Python

Δημοσίευσηαπό Charval » 27 Ιαν 2013, 19:39

Σε ευχαριστώ the_eye! Πραγματικά είναι πιο ευανάγνωστος. :D
Charval
babeTUX
babeTUX
 
Δημοσιεύσεις: 7
Εγγραφή: 27 Ιαν 2013, 10:19
Εκτύπωση

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

Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι