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

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

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

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

Δημοσίευσηαπό pmav99 » 11 Ιαν 2012, 12:03

Αν αυτό που θέλεις να κάνεις είναι να διαβάσεις/γράψεις ένα αρχείο config, δες το ConfigParser:
http://www.doughellmann.com/PyMOTW/ConfigParser/
http://www.red-dove.com/config-doc/
http://docs.python.org/library/configparser.html

δες εδώ και για άλλες επιλογές
http://www.decalage.info/en/python/configparser
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

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

Δημοσίευσηαπό Ilias95 » 11 Ιαν 2012, 16:53

medigeek έγραψε:tampering with the evidence!

Καλά όχι και tampering. :P
Εντάξει δεν νομίζω ότι παίζει και τόσο μεγάλο ρόλο. Απλά με τις εξαιρέσεις δεν υπάρχει καμία πιθανότητα για σφάλμα κι ας είναι 1%. :P

@clepto
Αν θες να αποθηκεύσεις δεδομένα για ένα pyqt πρόγραμμα κοίταξε αν θες και τις QtCore.QSettings().
Μπορείς εύκολα να αποθηκεύσεις ρυθμίσεις για τα προγράμματα σου και μάλιστα δεν χρειάζεται να μπλέξεις καθόλου με αρχεία (το άνοιγμα, κλείσιμο κτλ γίνονται αυτόματα).
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

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

Δημοσίευσηαπό clepto » 11 Ιαν 2012, 17:04

θελω να αποθηκευσω ονοματα που θα εμφανιζω σε τρεις listwidget
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 13.04 raring 3.8.0-30-generic 64bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.8.0-19-generic, Windows 7
3 Intel Core i7-3537U CPU @ 2.00GHz ‖ RAM 3840 MiB ‖ ASUS K56CB
4 Intel 3rd Gen Core processor Graphics Controller [8086:0166] {i915}
5 wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01) ⋮ eth0: Realtek RTL8111/8168 PCI Express Gigabit Ethernet controller [10ec:8168] (rev 0a)
clepto
antiwinTUX
antiwinTUX
 
Δημοσιεύσεις: 4102
Εγγραφή: 07 Ιαν 2010, 16:27
Τοποθεσία: Πάτρα
Launchpad: christriant
IRC: Clepto
Εκτύπωση

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

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

clepto έγραψε:θελω να αποθηκευσω ονοματα που θα εμφανιζω σε τρεις listwidget

στις QSettings μπορείς να αποθηκεύσεις οποιοδήποτε (έχω την εντύπωση) python object, όπως λίστες πχ.
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

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

Δημοσίευσηαπό clepto » 11 Ιαν 2012, 17:20

θα το κοιτάξω...
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 13.04 raring 3.8.0-30-generic 64bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.8.0-19-generic, Windows 7
3 Intel Core i7-3537U CPU @ 2.00GHz ‖ RAM 3840 MiB ‖ ASUS K56CB
4 Intel 3rd Gen Core processor Graphics Controller [8086:0166] {i915}
5 wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01) ⋮ eth0: Realtek RTL8111/8168 PCI Express Gigabit Ethernet controller [10ec:8168] (rev 0a)
clepto
antiwinTUX
antiwinTUX
 
Δημοσιεύσεις: 4102
Εγγραφή: 07 Ιαν 2010, 16:27
Τοποθεσία: Πάτρα
Launchpad: christriant
IRC: Clepto
Εκτύπωση

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

Δημοσίευσηαπό Ilias95 » 13 Ιαν 2012, 15:33

Σε τι ακριβώς χρησιμεύουν οι generators; Γιατί να μην προτιμήσουμε να συλλέξουμε όλα τα αντικείμενα που θα "παραχθούν" σε μια λίστα;
Πότε πρέπει να χρησιμοποιούνται; Έχει να κάνει με την μνήμη που χρησιμοποιεί το πρόγραμμα;
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

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

Δημοσίευσηαπό pmav99 » 13 Ιαν 2012, 19:27

Ναι έχει να κάνει με το memory footprint. Το κάθε item της λίστας δημιουργείται τη στιγμή που το χρειάζεσαι αντί να δημιουργείται η λίστα όλη μαζί.
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

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

Δημοσίευσηαπό Ilias95 » 13 Ιαν 2012, 20:46

Δηλαδή όταν θα χρησιμοποιήσω τον generator σε ένα for loop οι τιμές που θα παράγονται δεν θα πιάσουν χώρο στην μνήμη;

Άρα πάντα όταν δεν χρειάζεται να αποθηκεύσουμε τις τιμές που θα παραχθούν είναι καλύτερα να χρησιμοποιούμαι generators;
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

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

Δημοσίευσηαπό pmav99 » 13 Ιαν 2012, 22:46

στις συνήθεις περιπτώσεις δεν νομίζω ότι έχει διαφορά. Ίσα ίσα οι lists παίζει να έιναι και λίγο πιο γρήγορες. Οι generators αξίζουν τον κόπο όταν έχεις τεράστια data
http://wiki.python.org/moin/Generators
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

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

Δημοσίευσηαπό Ilias95 » 13 Ιαν 2012, 22:51

pmav99 έγραψε:Ίσα ίσα οι lists παίζει να έιναι και λίγο πιο γρήγορες.

Ναι, και εγώ μετά από μερικές δοκιμές εκεί κατέληξα.
Επίσης στο link που έδωσες ο iterator στο 2ο παράδειγμα είναι αρκετά πιο αργός και από τις λίστες και απ' τους generators.
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

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

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