GeorgeGrz έγραψε:
Γραμμικη αλγεβρα δεν εχω κανει ακομα,ειμαι 2α λυκειου...νομιζω ομως πως θα κανω στην σχολη,οσο αφορα το κομματι με τον πινακα,ηξερα τι ειναι απλα δεν το καταλαβα πως το ζηταει ετσι,τελος παντων,τωρα που καταλαβα θα το επαναλαβω για να το κατανοησω καλυτερα.Μηπως τωρα θα μπορουσε καποιος να μου πει για τα libraries?
Δεν χρειάζεται να ξέρεις γραμμική άλγεβρα, απλώς δες τη κάνω μέσα στο loop, είναι πολύ απλό.
Τώρα για τα libraries, είναι οργανωμένοι κώδικες σε αντικειμενοστραφή προγραμματισμό οι οποίες σου παρέχουν κάποιες λειτουργίες για να κάνουν την ζωή σου ποιο εύκολη. Για παράδειγμα:
import os
#Δημιουργεί έναν νέο φάκελο στην επιφάνεια εργασίας.
os.mkdir("C:\\Users\\babaliaris\\desktop\\new_folder")
Η μέθοδος mkdir της βιβλιοθήκης os παίρνει ως όρισμα ένα string και δημιουργεί έναν
φάκελο στο λειτουργικό σου σύστημα. Σε κάθε λειτουργικό σύστημα η δημιουργία ενός
νέου φακέλου (directories όπως τα λένε στα λειτουργικά) διαφέρει. Η os.mkdir σου
εξασφαλίζει ότι σε όποιο λειτουργικό σύστημα και αν την τρέξεις θα σου δημιουργήσει έναν νέο φάκελο.
Σκέψου τώρα να το έκανες αυτό μόνος σου. Θα έπρεπε για κάθε λειτουργικό σύστημα που
μπορεί να τρέξει python να έγγραφες έναν κώδικα για να δημιουργεί έναν φάκελο.
Αυτήν είναι η δουλειά των βιβλιοθηκών. Σου παρέχουν λειτουργίες που τις χρησιμοποιείς
συχνά και δεν χρειάζεται να ξέρεις πως δουλεύουν. Η os.mkdir δεν ξέρεις πως δουλεύει αλλά πολύ εύκολα την χρησιμοποιείς για να δημιουργήσεις έναν νέο φάκελο.
Τώρα πάμε να δούμε με ένα παράδειγμα πως μπορείς και εσύ να δημιουργήσεις δικές σου βιβλιοθήκες.
Μιας και είσαι δευτέρα λυκείου σίγουρα έχεις ένα μάθημα που ονομάζεται κωμικές τομές η κάτι τέτοιο και είναι μαθηματικά που έχουν σχέση με διανύσματα.
Γνωρίζουμε ότι ένα διάνυσμα δημιουργείται από δύο σημεία στο επίπεδο με τον εξής τρόπο:
Εάν a(x1,y1) και b(x2,y2) είναι δύο σημεία στο επίπεδο, τότε το διάνυσμα που δημιουργούν
θα είναι το : c(x2 - x1, y2 - y1)
Αυτό το νέο σημείο c σημαίνει ότι είναι το τέλος του διανύσματος το οποίο έχει ως αρχή το
(0,0) και τέλος το σημείο c.
Επιπλέον γνωρίζουμε ότι ο υπολογισμός του μέτρου (μήκους) ενός διανύσματος υπολογίζεται ως εξής:
Εάν c(x, y) είναι διάνυσμα τότε το μέτρο του θα είναι:
m = τετραγωνική_ρίζα(x**2 + y**2)
Σύμφωνα με αυτά θα δημιουργήσω μια βιβλιοθήκη η οποία θα σου παρέχει λειτουργίες
όπως: "δημιούργησε ένα νέο διάνυσμα" και "πάρε το μέτρο ενός διανύσματος".
Module: vector.py
import math
class Vector2D:
#==========Κατασκευαστής Κλάσης Vector2D==========#
def __init__(self, point_a, point_b):
#Δημιουργία πρώτης συνιστώσας x2-x1
self.x = point_b[0] - point_a[0]
#Δημιουργία δεύτερης συνιστώσας x2-x1
self.y = point_b[1] - point_a[1]
#==========Κατασκευαστής Κλάσης Vector2D==========#
#Επιστρέφει το μέτρο του διανύσματος.
def get_magnitude(self):
return math.sqrt( self.x**2 + self.y**2 )
#Πολλαπλασίασε αυτο το διάνυσμα με έναν αριθμό.
def multiple(self, value):
self.x *= value
self.y *= value
#Κτλ........................
#Κλάση που χρησιμοποιήτε από τον χρήστη.
class Vector:
#Δημιουργία διανύσματος.
def create(point_a, point_b):
'''Δημιουργεί ένα διάνυσμα και το επιστρεφει (point_a, point_b) ---> Vector2D'''
new_vector = Vector2D(point_a, point_b)
return new_vector
Πολύ απλά τώρα για να χρησιμοποιήσεις την βιβλιοθήκη κάνεις το εξής:
from vector import Vector
myVector = Vector.create( (1,2), (3,4) )
print( myVector.get_magnitude() )
Αυτό είναι ένα παράδειγμα αντικειμενοστραφή προγραμματισμού στην ουσία αλλά και οι
βιβλιοθήκες έτσι δουλεύουν. Αρκεί να ξέρεις ότι κυρίως μια βιβλιοθήκη είναι βοηθητικά εργαλεία για μια δουλειά που θες να κάνεις.
Εάν δεν κατάλαβες κάτι πες το μου.