Κατανοήστε το εύρος των καθολικών μεταβλητών στο python

Understand Global Variables Scope Python



Δύο τύποι μεταβλητών μπορούν να οριστούν στις περισσότερες γλώσσες προγραμματισμού. Αυτές είναι καθολικές μεταβλητές και τοπικές μεταβλητές. Οι μεταβλητές που ορίζονται έξω από τη συνάρτηση ονομάζονται καθολική μεταβλητή. Αυτή η μεταβλητή είναι προσβάσιμη και μεταβλητή από οπουδήποτε στο σενάριο. Η μεταβλητή που δηλώνεται μέσα στη συνάρτηση ονομάζεται τοπική μεταβλητή. Αλλά εάν το ίδιο όνομα μεταβλητής υπάρχει ως καθολικές και τοπικές μεταβλητές, τότε η μεταβλητή μέσα στη συνάρτηση θα έχει προτεραιότητα και η τιμή της καθολικής μεταβλητής θα αγνοηθεί. Το εύρος της καθολικής μεταβλητής στο σενάριο python εμφανίζεται σε αυτό το σεμινάριο χρησιμοποιώντας διάφορα παραδείγματα.

Παράδειγμα-1: Απλή χρήση καθολικής μεταβλητής

Το ακόλουθο παράδειγμα δείχνει την απλή χρήση μιας καθολικής μεταβλητής εντός και εκτός της συνάρτησης. Εδώ, μια παγκόσμια μεταβλητή με όνομα κείμενο χρησιμοποιείται για την εκχώρηση δεδομένων συμβολοσειράς. Μια προσαρμοσμένη συνάρτηση με όνομα printMessage () έχει οριστεί για την εκτύπωση της τιμής της καθολικής μεταβλητής. Η αξία του κείμενο η μεταβλητή εκτυπώνεται μέσα στη συνάρτηση και έξω από τη συνάρτηση μετά την αλλαγή της τιμής.







#!/usr/bin/env python3

# Ορίστε μια καθολική μεταβλητή
κείμενο= 'Καλώς ορίσατε στο LinuxHint'

# Ορίστε μια συνάρτηση
defprintMessage():

# Εκτυπώστε την καθολική μεταβλητή από τη συνάρτηση
Τυπώνω(«Παγκόσμια μεταβλητή εντός συνάρτησης: n',κείμενο)

# Καλέστε τη λειτουργία
printMessage()

# Αλλάξτε την τιμή της καθολικής μεταβλητής
κείμενο= «Μάθετε προγραμματισμό Python»

# Εκτυπώστε την τρέχουσα τιμή της καθολικής μεταβλητής
Τυπώνω(«Παγκόσμια μεταβλητή εξωτερική λειτουργία: n',κείμενο)

Παραγωγή:



Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του σεναρίου. Τύπωσε την τιμή, ' Καλώς ορίσατε στο LinuxHint ' που έχει εκχωρηθεί στη μεταβλητή πριν καλέσετε τη συνάρτηση. Στη συνέχεια, εκτύπωσε την τιμή, «Μάθετε προγραμματισμό Python» μετά την αλλαγή της τιμής της μεταβλητής.







Παράδειγμα-2: Χρήση καθολικής και τοπικής μεταβλητής με το ίδιο όνομα

Εάν θέλετε να δηλώσετε ένα όνομα μεταβλητής μέσα σε μια συνάρτηση που έχει ήδη δηλωθεί ως καθολική μεταβλητή πριν στην python και θέλετε να χρησιμοποιήσετε τη μεταβλητή, τότε θα μεταχειριστεί τη μεταβλητή ως τοπική μεταβλητή και θα δημιουργήσει σφάλμα. Το παρακάτω σενάριο θα εμφανίσει το σφάλμα. Εδώ, το κείμενο η μεταβλητή ορίζεται ως γενική και τοπική μεταβλητή.

#!/usr/bin/env python3

# Ορίστε μια καθολική μεταβλητή
κείμενο= «Μου αρέσει η Python»

# Ορίστε μια συνάρτηση
defprintMessage():
Τυπώνω(κείμενο)

κείμενο= 'Μου αρέσει η PHP'

# Καλέστε τη λειτουργία
printMessage()

Παραγωγή:



Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του σεναρίου.

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

#!/usr/bin/env python3

# Ορίστε μια καθολική μεταβλητή
κείμενο= «Μου αρέσει η Python»

# Ορίστε μια συνάρτηση
defprintMessage():
# Προσδιορίστε την τοπική αξία
κείμενο= 'Μου αρέσει η PHP'
# Εκτυπώστε την τοπική μεταβλητή, κείμενο
Τυπώνω('Η τιμή του' κειμένου 'μέσα στη λειτουργία: n',κείμενο)

# Καλέστε τη λειτουργία
printMessage()

# Εκτυπώστε την καθολική μεταβλητή, κείμενο
Τυπώνω('Η τιμή του' κειμένου 'εκτός συνάρτησης: n',κείμενο)

Παραγωγή:

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του σεναρίου.

Παράδειγμα-3: Χρήση καθολικής μεταβλητής μέσα στη συνάρτηση

Το προηγούμενο παράδειγμα δείχνει ότι η καθολική μεταβλητή δεν είναι προσβάσιμη μέσα σε μια συνάρτηση. Μπορείς να χρησιμοποιήσεις το παγκόσμιο λέξη -κλειδί για πρόσβαση σε μια καθολική μεταβλητή από οποιαδήποτε συνάρτηση. Στο παρακάτω σενάριο, cal_percentage () η συνάρτηση ορίζεται για τον υπολογισμό του ποσοστού οποιουδήποτε αριθμού όπου χρησιμοποιούνται τόσο καθολικές όσο και τοπικές μεταβλητές. Εδώ, σε ένα είναι μια παγκόσμια μεταβλητή και perVal είναι μια τοπική μεταβλητή. παγκόσμια Η λέξη -κλειδί χρησιμοποιείται εδώ για τον προσδιορισμό της καθολικής μεταβλητής μέσα στη συνάρτηση και η τιμή της καθολικής μεταβλητής αλλάζει μέσα στη συνάρτηση.

#!/usr/bin/env python3

# Πάρτε μια ακέραιη τιμή
σε ένα= int(εισαγωγή('Εισαγάγετε έναν αριθμό:'))

# Ορίστε τη συνάρτηση
defcal_percentage():
# Αναγνωρίστε την παγκόσμια μεταβλητή χρησιμοποιώντας καθολική λέξη -κλειδί
παγκόσμιασε ένα

# Λάβετε μια ακέραια τιμή ως ποσοστό
perVal= int(εισαγωγή('Εισαγάγετε την ποσοστιαία τιμή:'))

# Υπολογίστε την ποσοστιαία τιμή
αποτέλεσμα= φλοτέρ((αν *perVal)/100)

# Εκτυπώστε το μορφοποιημένο αποτέλεσμα
Τυπώνω(' %d ποσοστό %d = %f'%(perVal,σε ένα,αποτέλεσμα))

# Αλλάξτε την τιμή της καθολικής μεταβλητής
σε ένα= 500

# Εκτυπώστε την τιμή της καθολικής μεταβλητής πριν καλέσετε τη συνάρτηση
Τυπώνω(' nΗ τιμή του num = %d '%σε ένα)

# Καλέστε τη λειτουργία
cal_percentage()

# Εκτυπώστε την τιμή της καθολικής μεταβλητής μετά την κλήση της συνάρτησης
Τυπώνω(' nΗ τιμή του num = %d '%σε ένα)

Παραγωγή:

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του σεναρίου. Εδώ υπολογίζεται και τυπώνεται το 10% των 350.

Παράδειγμα-4: Χρήση καθολικών μεταβλητών από άλλο σενάριο

Το ακόλουθο παράδειγμα δείχνει ότι ο τρόπος καθολικής μεταβλητής που δηλώνεται σε ένα σενάριο μπορεί να χρησιμοποιηθεί σε άλλο σενάριο. Ας υποθέσουμε ότι το όνομα αρχείου είναι global6.py που θα χρησιμοποιήσει τις καθολικές μεταβλητές που ορίζονται στο όνομα του αρχείου global5.py Το Τρεις καθολικές μεταβλητές δηλώνονται σε global5.py Το Πρέπει να εισαγάγετε παγκόσμιο 5 για να χρησιμοποιήσετε τις μεταβλητές σε άλλο σενάριο. Το σενάριο του global6.py θα υπολογίσει τον μισθό τριών τύπων εργαζομένων με βάση τις τιμές εισροών και τις συνολικές μεταβλητές.

#!/usr/bin/env python3
# αυτό είναι αρχείο global5.py

# Βασική δομή μισθών μιας εταιρείας
Βασικός= 5000
Ιατρικός= 500
Μεταφορά= 500 #!/usr/bin/env python3
# αυτό είναι αρχείο global6.py

# Εισαγάγετε τις καθολικές μεταβλητές από το global5.py
εισαγωγήπαγκόσμιο 5

# Πάρτε το όνομα του υπαλλήλου
όνομα= εισαγωγή('Εισαγάγετε το όνομα του υπαλλήλου:')
# Πάρτε το όνομα της ανάρτησης
Θέση= εισαγωγή('Εισαγάγετε την ανάρτηση:')

# Αρχικοποιήστε τη μεταβλητή σφάλματος
λάθος= Ψευδής

# Ελέγξτε την ανάρτηση και ορίστε τον βασικό μισθό με βάση την ανάρτηση
αν(Θέση.ανώτερος() == «Διευθύνων Σύμβουλος»):
βασικός=παγκόσμιο 5.Βασικός+(παγκόσμιο 5.Βασικός*0,4)
elif(Θέση.ανώτερος() == 'ΔΙΕΥΘΥΝΤΗΣ'):
βασικός=παγκόσμιο 5.Βασικός+(παγκόσμιο 5.Βασικός*0,25)
elif(Θέση.ανώτερος() == 'ΛΟΓΙΣΤΗΣ'):
βασικός=παγκόσμιο 5.Βασικός+(παγκόσμιο 5.Βασικός*0,15)
αλλού:
# Ορίστε το σφάλμα σε αληθές αν δεν βρεθεί η τιμή δημοσίευσης
λάθος= Αληθής

# Εκτυπώστε τον μισθό εάν το σφάλμα είναι πλαστό
αν (λάθος== Ψευδής):
Μισθός=βασικό + παγκόσμιο5.Ιατρικός+ παγκόσμιο5.Μεταφορά
Τυπώνω('Ο μισθός του %s είναι %d'%(όνομα,Μισθός))
αλλού:
Τυπώνω('Η ανάρτηση δεν βρέθηκε')

Παραγωγή:

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του σεναρίου. Εδώ, το σενάριο εκτελείται δύο φορές με έγκυρη ανάρτηση και μη έγκυρη ανάρτηση.

Συμπέρασμα:

Η έννοια μιας καθολικής μεταβλητής στην python εξηγείται σε αυτό το σεμινάριο με τα διάφορα απλά παραδείγματα για τους νέους χρήστες python. Ελπίζω ότι οι αναγνώστες θα λάβουν τη σωστή γνώση των καθολικών μεταβλητών καθώς και των τοπικών μεταβλητών αφού διαβάσουν αυτό το σεμινάριο.

Δείτε το βίντεο του συγγραφέα: εδώ