Συζήτηση
Γεια χαρά, Επισκέπτης
Όνομα χρήστη: Κωδικός: Να με θυμάσαι

ΘΕΜΑ: Απορία για βασικά στοιχεία σύνταξης και τιμές Boole

Απορία για βασικά στοιχεία σύνταξης και τιμές Boole 13 Χρόνια 4 Εβδομάδες πριν #1554

  • anvo
  • Το Άβαταρ του/της anvo
  • Αποσυνδεμένος
  • p_____
  • Δημοσιεύσεις: 5
Γειά σας, φίλοι!

Σ' ένα σενάριο Python ξέρω ότι είναι εξαιρετικά χρήσιμο (αν όχι απαραίτητο) οι γραμμές κώδικα να περιλαμβάνονται μεταξύ των γραμμών
def main():
if __name__ == "__main__":main()

Στα διάφορα βιβλία και guides που διάβασα δεν μου γίνεται ξεκάθαρος ο λόγος!!! Γιατί αυτές οι γραμμές κώδικα είναι τόσο σημαντικές και σπουδαίες; Τι θα συμβεί αν αυτές λείψουν;

Διάβασα, επίσης, ότι σε μια έκφραση μπορούμε να αντικαταστήσουμε την συνθήκη "a < b" με την τιμή "False" ή την τιμή "True". Για παράδειγμα:

Το σενάριο
def main():
          a, b = 0, 1
          if a < b:
             print('this is true')
      if __name__ == "__main__": main()

έχει την ίδια ερμηνεία με το σενάριο
def main():
          a, b = 0, 1
          if True:
             print('This is true')
      if __name__ == "__main__": main()

Πώς είναι δυνατόν η συνθήκη να είναι συντακτικά/συμβολικά ταυτόσημη με την ενδεχόμενη τιμή της; Γίνεται να ορίσουμε πρώτα την τιμή της συνθήκης, πριν ορίσουμε καν την συνθήκη την ίδια;

Ευχαριστώ για την υπομονή σας!
Γιώργος
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Απ: Απορία για βασικά στοιχεία σύνταξης και τιμές Boole 13 Χρόνια 4 Εβδομάδες πριν #1556

  • pmav99
  • Το Άβαταρ του/της pmav99
  • Αποσυνδεμένος
  • Author
  • Δημοσιεύσεις: 684
  • Ληφθείσες Ευχαριστίες 111
Καλησπέρα. Για αρχή δες τα links, αν εξακολουθείς να έχεις πρόβλημα, ξαναρωτάς

stackoverflow.com/questions/419163/what-does-if-name-main-do
docs.python.org/tutorial/modules.html ($6.1.1)
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Απ: Απορία για βασικά στοιχεία σύνταξης και τιμές Boole 13 Χρόνια 4 Εβδομάδες πριν #1558

  • myle
  • Το Άβαταρ του/της myle
  • Αποσυνδεμένος
  • Admin
  • Δημοσιεύσεις: 467
  • Ληφθείσες Ευχαριστίες 15
Για το πρώτο,

αν έχεις την
if __name__ == '__main__':
    main()

σε ένα αρχείο πχ myfile.py

με απλά λόγια σημαίνει πως αν το πρόγραμμα σου εκτελέστηκε με python myfile.py, τότε θα εκτελεστεί η συνάρτηση του main. Αλλιώς, αν έχει γίνει import απλά σε κάποιο άλλο αρχείο, η main() δε θα εκτελεστεί εκτός και να κληθεί ρητά.

Αν δεν είχες την main περικλυσμένο σε αυτή τη συνθήκη, θα εκτελούταν σε κάνε import πράγμα που πολλές φορές δε το θες.

Για το δεύτερο, η τιμή μιας συνθήκης θα είναι είτε True, είτε False, ανάλογα με τα δεδομένα σε κάθε εκτέλεση του προγράμματος. Όταν όμως το αντικαθιστάς με το χέρι, εσύ του δίνεις ρητά πάντα μια από τις δυο τιμές, ενώ όταν το αφήνεις ως συνθήκη, εξαρτάται από τις τιμές των μεταβλητών της συνθήκης.
«Αν υποθέσουμε ότι αυτό είναι δυνατό, (να μεταδώσουμε τη σοφία παντού) τότε ειλικρινά ο τρόπος ζωής των θεών θα περάσει στους ανθρώπους. Τα πάντα θα είναι γεμάτα...
Τελευταία διόρθωση: 13 Χρόνια 4 Εβδομάδες πριν από myle.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.
Συντονιστές: pmav99
Χρόνος δημιουργίας σελίδας: 0.527 δευτερόλεπτα

Μοιράσου το!

Powered by CoalaWeb

Λίστα Ταχυδρομείου