Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

5.6 Η έννοια του Module στην Python

Python Modules
Τα Python Modules είναι αρχεία που περιέχουν κώδικα Python. Ένα module μπορεί να ορίζει συναρτήσεις, κλάσεις και μεταβλητές που μπορούμε να εισάγουμε και να χρησιμοποιήσουμε σε άλλα προγράμματα Python.

Δημιουργία ενός Module
Για να δημιουργήσετε ένα module, απλώς αποθηκεύστε τον κώδικα Python σε ένα αρχείο με την επέκταση .py. Για παράδειγμα, ας δημιουργήσουμε ένα module με όνομα my_module.py:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# my_module.py
def greeting(name):
print("Hello, " + name)
# my_module.py def greeting(name): print("Hello, " + name)
# my_module.py
def greeting(name):
    print("Hello, " + name)

Εισαγωγή ενός Module
Για να χρησιμοποιήσετε ένα module που έχετε δημιουργήσει, χρησιμοποιήστε την εντολή import, ακολουθούμενη από το όνομα του module (χωρίς την επέκταση .py):

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import my_module
my_module.greeting("John")
import my_module my_module.greeting("John")
import my_module

my_module.greeting("John")

Όταν εκτελείται το παραπάνω πρόγραμμα, θα εμφανίσει: “Hello, John”

Μπορείτε να εισάγετε μόνο τις συναρτήσεις που χρειάζεστε από ένα module, χρησιμοποιώντας τη δήλωση from … import:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# my_module.py
def greeting(name):
print("Hello, " + name)
def farewell(name):
print("Goodbye, " + name)
# my_module.py def greeting(name): print("Hello, " + name) def farewell(name): print("Goodbye, " + name)
# my_module.py
def greeting(name):
    print("Hello, " + name)

def farewell(name):
    print("Goodbye, " + name)
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from my_module import greeting
greeting("John")
from my_module import greeting greeting("John")
from my_module import greeting

greeting("John")

Στο παραπάνω παράδειγμα, εισάγουμε μόνο τη συνάρτηση greeting από το my_module. Εκτελώντας το πρόγραμμα θα εμφανίσει “Hello, John”. Η συνάρτηση farewell δεν θα είναι διαθέσιμη στο πρόγραμμα.

Μπορείτε επίσης να εισάγετε πολλαπλές συναρτήσεις ταυτόχρονα, διαχωρίζοντάς τες με κόμμα:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from my_module import greeting, farewell
greeting("John")
farewell("John")
from my_module import greeting, farewell greeting("John") farewell("John")
from my_module import greeting, farewell

greeting("John")
farewell("John")

[adinserter block=”2″]

Μπορείτε να αλλάξετε το όνομα μιας συνάρτησης κατά την εισαγωγή της, χρησιμοποιώντας τη δήλωση as:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from my_module import greeting as gr
gr("John")
from my_module import greeting as gr gr("John")
from my_module import greeting as gr

gr("John")

Στο παραπάνω παράδειγμα, εισάγουμε τη συνάρτηση greeting από το my_module, αλλά την καλούμε με το όνομα gr. Εκτελώντας το πρόγραμμα θα εμφανίσει “Hello, John”.
Το module μπορεί να περιέχει συναρτήσεις, όπως έχουμε ήδη περιγράψει, αλλά και μεταβλητές όλων των τύπων (λίστες, λεξικά, αντικείμενα κ.λπ.):

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# my_module.py
def greeting(name):
print("Hello, " + name)
def farewell(name):
print("Goodbye, " + name)
age = 25
names = ["Γιάννης", "Ελένη", "Νίκος"]
# my_module.py def greeting(name): print("Hello, " + name) def farewell(name): print("Goodbye, " + name) age = 25 names = ["Γιάννης", "Ελένη", "Νίκος"]
# my_module.py
def greeting(name):
    print("Hello, " + name)

def farewell(name):
    print("Goodbye, " + name)

age = 25
names = ["Γιάννης", "Ελένη", "Νίκος"]

Μπορείτε να εισάγετε τις μεταβλητές από το module όπως εισάγετε και τις συναρτήσεις:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from my_module import age, names
print(age) # Εμφανίζει: 25
print(names) # Εμφανίζει: ["Γιάννης", "Ελένη", "Νίκος"]
from my_module import age, names print(age) # Εμφανίζει: 25 print(names) # Εμφανίζει: ["Γιάννης", "Ελένη", "Νίκος"]
from my_module import age, names

print(age)  # Εμφανίζει: 25
print(names)  # Εμφανίζει: ["Γιάννης", "Ελένη", "Νίκος"]

Ή μπορείτε να εισάγετε ολόκληρο το module και να χρησιμοποιήσετε τις μεταβλητές με το όνομα του module ως πρόθεμα:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import my_module
print(my_module.age) # Εμφανίζει: 25
print(my_module.names) # Εμφανίζει: ["Γιάννης", "Ελένη", "Νίκος"]
import my_module print(my_module.age) # Εμφανίζει: 25 print(my_module.names) # Εμφανίζει: ["Γιάννης", "Ελένη", "Νίκος"]
import my_module

print(my_module.age)  # Εμφανίζει: 25
print(my_module.names)  # Εμφανίζει: ["Γιάννης", "Ελένη", "Νίκος"]

Ας δημιουργήσουμε ένα module με ένα λεξικό και στη συνέχεια θα το εισάγουμε σε ένα άλλο αρχείο Python.

  1. Δημιουργήστε ένα αρχείο Python με όνομα my_dictionary_module.py και προσθέστε τον ακόλουθο κώδικα:
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# my_dictionary_module.py
person = {
"name": "Γιάννης",
"age": 30,
"city": "Αθήνα"
}
# my_dictionary_module.py person = { "name": "Γιάννης", "age": 30, "city": "Αθήνα" }
# my_dictionary_module.py
person = {
    "name": "Γιάννης",
    "age": 30,
    "city": "Αθήνα"
}
  1. Τώρα, δημιουργήστε ένα νέο αρχείο Python και εισάγετε το λεξικό από το my_dictionary_module.py:
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from my_dictionary_module import person
print(person)
# Εμφανίζει: {"name": "Γιάννης", "age": 30, "city": "Αθήνα"}
print(person["name"])
# Εμφανίζει: Γιάννης
print(person["age"])
# Εμφανίζει: 30
print(person["city"])
# Εμφανίζει: Αθήνα
from my_dictionary_module import person print(person) # Εμφανίζει: {"name": "Γιάννης", "age": 30, "city": "Αθήνα"} print(person["name"]) # Εμφανίζει: Γιάννης print(person["age"]) # Εμφανίζει: 30 print(person["city"]) # Εμφανίζει: Αθήνα
from my_dictionary_module import person

print(person)
# Εμφανίζει: {"name": "Γιάννης", "age": 30, "city": "Αθήνα"}

print(person["name"])
# Εμφανίζει: Γιάννης

print(person["age"])
# Εμφανίζει: 30

print(person["city"])
# Εμφανίζει: Αθήνα

[adinserter block=”3″]

Με αυτόν τον τρόπο, μπορείτε να εισάγετε και να χρησιμοποιήσετε λεξικά από άλλα αρχεία Python.
Υπάρχουν αρκετά ενσωματωμένα modules στην Python, τα οποία μπορείτε να εισάγετε όποτε θέλετε.

Δείτε μερικά παραδείγματα ενσωματωμένων modules και πώς μπορείτε να τα εισάγετε:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import math
print(math.sqrt(16)) # Εμφανίζει: 4.0
print(math.pi) # Εμφανίζει: 3.141592653589793
import random
print(random.randint(1, 10)) # Εμφανίζει έναν τυχαίο ακέραιο από το 1 έως το 10
import datetime
current_date = datetime.datetime.now()
print(current_date) # Εμφανίζει την τρέχουσα ημερομηνία και ώρα
import os
print(os.getcwd()) # Εμφανίζει τον τρέχοντα φάκελο εργασίας
import math print(math.sqrt(16)) # Εμφανίζει: 4.0 print(math.pi) # Εμφανίζει: 3.141592653589793 import random print(random.randint(1, 10)) # Εμφανίζει έναν τυχαίο ακέραιο από το 1 έως το 10 import datetime current_date = datetime.datetime.now() print(current_date) # Εμφανίζει την τρέχουσα ημερομηνία και ώρα import os print(os.getcwd()) # Εμφανίζει τον τρέχοντα φάκελο εργασίας
import math

print(math.sqrt(16))  # Εμφανίζει: 4.0
print(math.pi)  # Εμφανίζει: 3.141592653589793

import random

print(random.randint(1, 10))  # Εμφανίζει έναν τυχαίο ακέραιο από το 1 έως το 10

import datetime

current_date = datetime.datetime.now()
print(current_date)  # Εμφανίζει την τρέχουσα ημερομηνία και ώρα

import os

print(os.getcwd())  # Εμφανίζει τον τρέχοντα φάκελο εργασίας

Υπάρχουν πολλά άλλα ενσωματωμένα modules που μπορείτε να χρησιμοποιήσετε για να επεκτείνετε τις λειτουργίες του κώδικά σας. Μπορείτε να βρείτε μια πλήρη λίστα των ενσωματωμένων modules στην επίσημη τεκμηρίωση της Python:

Υπάρχει μια ενσωματωμένη συνάρτηση για να απαριθμήσετε όλα τα ονόματα συναρτήσεων (ή ονόματα μεταβλητών) σε ένα module. Η συνάρτηση dir():

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import math
# Εμφανίζει όλες τις συναρτήσεις και τις μεταβλητές που παρέχονται από το module math
print(dir(math))
import math # Εμφανίζει όλες τις συναρτήσεις και τις μεταβλητές που παρέχονται από το module math print(dir(math))
import math

# Εμφανίζει όλες τις συναρτήσεις και τις μεταβλητές που παρέχονται από το module math
print(dir(math))

Αυτό θα εμφανίσει μια λίστα με όλες τις συναρτήσεις και τις μεταβλητές που περιέχονται στο module math. Μπορείτε να χρησιμοποιήσετε τη συνάρτηση dir() για οποιοδήποτε άλλο module που εισάγετε, για να δείτε τις διαθέσιμες συναρτήσεις και μεταβλητές.

Σημείωση: Η συνάρτηση dir() επιστρέφει επίσης ορισμένα ειδικά ονόματα που ξεκινούν και τελειώνουν με διπλές κάτω παύλες (π.χ. __name__, __file__ κ.λπ.). Αυτά τα ονόματα αναφέρονται σε ειδικά χαρακτηριστικά του module και συνήθως δεν χρησιμοποιούνται σε καθημερινό προγραμματισμό.

Δωρεα μεσω Paypal

Για την κάλυψη αναγκών φιλοξενίας και δημιουργίας περιεχομένου.

κατηγοριες μαθηματων

Ιστορικο ενοτητων

top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων