5.Χρησιμοποιώντας Python σε macOS¶
Αυτό το έγγραφο αποσκοπεί στο να δώσει μια επισκόπηση της συμπεριφοράς που σχετίζεται με το macOS που θα πρέπει να γνωρίζετε για να ξεκινήσετε με την Python σε υπολογιστές Mac. Η Python σε Mac που εκτελεί macOS είναι πολύ παρόμοια με την Python σε άλλες πλατφόρμες που προέρχονται από το Unix, αλλά υπάρχουν κάποιες διαφορές στην εγκατάσταση και κάποιες δυνατότητες.
Υπάρχουν διάφοροι τρόποι για να αποκτήσετε και να εγκαταστήσετε την Python για macOS. Προκατασκευασμένες εκδόσεις των πιο πρόσφατων εκδόσεων της Python είναι διαθέσιμες από έναν αριθμό διανομέων. Πολλές από αυτές τις πληροφορίες περιγράφουν τη χρήση της Python που παρέχονται από την ομάδα κυκλοφορίας CPython για λήψη από την ιστοσελίδαpython.org. ΔείτεΕναλλακτικές Διανομές για μερικές άλλες επιλογές.
5.1.Χρησιμοποιώντας Python για macOS από τοpython.org
¶
5.1.1.Βήματα εγκατάστασης¶
Γιατρέχουσες εκδόσεις Python (εκτός από αυτές που είναι σε κατάστασηsecurity
), η ομάδα κυκλοφορίας παράγει έναPython για macOS πακέτο εγκατάστασης για κάθε νέα κυκλοφορία. Μια λίστα διαθέσιμων εγκαταστατών είναι διαθέσιμηεδώ. Συνιστούμε τη χρήση της πιο πρόσφατης υποστηριζόμενης έκδοσης Python όπου είναι δυνατόν. Οι τρέχοντες εγκαταστάτες παρέχουν μιαuniversal2 binary έκδοση της Python που εκτελείται εγγενώς σε όλους τους υπολογιστές Mac (Apple Silicon και Intel) που υποστηρίζονται από μια ευρεία γκάμα εκδόσεων macOS, αυτή τη στιγμή συνήθως από τουλάχιστονmacOS 10.13 High Sierra και μετά.
Το αρχείο που κατεβάσατε είναι ένα τυπικό αρχείο πακέτου εγκατάστασης macOS (.pkg
). Οι πληροφορίες ακεραιότητας αρχείου (έλεγχος ταυτότητας, μέγεθος, υπογραφή sigstore κ.λπ.) για κάθε αρχείο περιλαμβάνονται στη σελίδα λήψης κυκλοφορίας. Τα πακέτα εγκατάστασης και το περιεχόμενό τους είναι υπογεγραμμένα και επικυρωμένα μεPythonSoftwareFoundation
Apple Developer ID πιστοποιητικά για να ικανοποιούν τις απαιτήσειςmacOS Gatekeeper.
Για μια τυπική εγκατάσταση, κάντε διπλό κλικ στο αρχείο πακέτου εγκατάστασης που κατεβάσατε. Αυτό θα πρέπει να εκκινήσει την τυπική εφαρμογή εγκατάστασης macOS και να εμφανίσει το πρώτο από αρκετά βήματα παραθύρου εγκατάστασης.

Κάνοντας κλικ στο κουμπίContinue εμφανίζεται τοRead Me για αυτόν τον εγκαταστάτη. Εκτός από άλλες σημαντικές πληροφορίες, τοRead Me καταγράφει ποια έκδοση Python πρόκειται να εγκατασταθεί και σε ποιες εκδόσεις macOS υποστηρίζεται. Ίσως χρειαστεί να κάνετε κύλιση για να διαβάσετε ολόκληρο το αρχείο. Από προεπιλογή, αυτό τοRead Me θα εγκατασταθεί επίσης στο/Applications/Python3.13/
και θα είναι διαθέσιμο για ανάγνωση οποιαδήποτε στιγμή.

Κάνοντας κλικ στοContinue προχωρά στην εμφάνιση της άδειας για την Python και για άλλο περιλαμβανόμενο λογισμικό. Στη συνέχεια θα χρειαστεί ναΣυμφωνήσετε με τους όρους άδειας πριν προχωρήσετε στο επόμενο βήμα. Αυτό το αρχείο άδειας θα εγκατασταθεί επίσης και θα είναι διαθέσιμο για ανάγνωση αργότερα.

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

Πατώντας το κουμπίCustomize, μπορείτε να επιλέξετε να παραλείψετε ή να επιλέξετε ορισμένα πακέτα του εγκαταστάτη. Κάντε κλικ σε κάθε όνομα πακέτου για να δείτε μια περιγραφή του τι εγκαθιστά. Για να εγκαταστήσετε επίσης υποστήριξη για την προαιρετική πειραματική δυνατότητα χωρίς νήματα, δείτεΕγκατάσταση εκδόσεων Free-threaded.

Σε κάθε περίπτωση, κάνοντας κλικ στοInstall θα ξεκινήσει η διαδικασία εγκατάστασης ζητώντας άδεια για την εγκατάσταση νέου λογισμικού. Ένα όνομα χρήστη macOS μεAdministrator
δικαιώματα είναι απαραίτητο καθώς η εγκατεστημένη Python θα είναι διαθέσιμη σε όλους τους χρήστες του Mac.
Όταν ολοκληρωθεί η εγκατάσταση, θα εμφανιστεί το παράθυροΠερίληψη.

Διπλό κλικ στο εικονίδιο ή το αρχείοInstall Certificates.command στο παράθυρο/Applications/Python3.13/
για να ολοκληρώσετε την εγκατάσταση.

Αυτό θα ανοίξει ένα προσωρινό παράθυρο κελύφουςTerminal που θα χρησιμοποιήσει τη νέα Python για να κατεβάσει και να εγκαταστήσει ριζικούς πιστοποιητικούς SSL για τη χρήση του.

Εάν εμφανιστείSuccessfullyinstalledcertifi
καιupdatecomplete
στο παράθυρο τερματικού, η εγκατάσταση είναι ολοκληρωμένη. Κλείστε αυτό το παράθυρο τερματικού και το παράθυρο εγκαταστάτη.
Μια προεπιλεγμένη εγκατάσταση θα περιλαμβάνει:
Ένα φάκελο
Python3.13
στο φάκελοApplications
. Εδώ θα βρείτε τοIDLE, το περιβάλλον ανάπτυξης που είναι τυπικό μέρος των επίσημων διανομών Python. και τοPython Launcher, το οποίο χειρίζεται τα διπλά κλικ σε Python scripts από το macOSFinder.Ένα πλαίσιο
/Library/Frameworks/Python.framework
, το οποίο περιλαμβάνει τον εκτελέσιμο κώδικα Python και τις βιβλιοθήκες. Το πρόγραμμα εγκατάστασης προσθέτει αυτήν την τοποθεσία στο shell path σας. Για να απεγκαταστήσετε την Python, μπορείτε να αφαιρέσετε αυτά τα τρία πράγματα. Symlinks στον εκτελέσιμο κώδικα Python τοποθετούνται στο/usr/local/bin/
.
Σημείωση
Οι πρόσφατες εκδόσεις του macOS περιλαμβάνουν μια εντολήpython3 στο/usr/bin/python3
που συνδέεται με μια συνήθως παλαιότερη και ελλιπή έκδοση της Python που παρέχεται από και για χρήση από τα εργαλεία ανάπτυξης της Apple,Xcode ή ταCommand Line Tools for Xcode. Δεν θα πρέπει ποτέ να τροποποιήσετε ή να προσπαθήσετε να διαγράψετε αυτήν την εγκατάσταση, καθώς ελέγχεται από την Apple και χρησιμοποιείται από το λογισμικό που παρέχεται από την Apple ή από τρίτους. Εάν επιλέξετε να εγκαταστήσετε μια νεότερη έκδοση Python από τοpython.org
, θα έχετε δύο διαφορετικές αλλά λειτουργικές εγκαταστάσεις Python στον υπολογιστή σας που μπορούν να συνυπάρχουν. Οι προεπιλεγμένες επιλογές εγκατάστασης θα πρέπει να διασφαλίσουν ότι ηpython3 θα χρησιμοποιηθεί αντί της συστήματοςpython3.
5.1.2.Πώς να εκτελέσετε ένα σενάριο Python¶
Υπάρχουν δύο τρόποι για να καλέσετε τον ερμηνευτή Python. Εάν είστε εξοικειωμένοι με τη χρήση ενός κελύφους Unix σε ένα παράθυρο τερματικού, μπορείτε να καλέσετεpython3.13
ήpython3
προαιρετικά ακολουθούμενο από μία ή περισσότερες επιλογές γραμμής εντολών (περιγράφεται στοCommand line and environment). Το εγχειρίδιο Python έχει επίσης μια χρήσιμη ενότητα σχετικά μεusing Python interactively from a shell.
Μπορείτε επίσης να καλέσετε τον ερμηνευτή μέσω ενός ενσωματωμένου αναπτυξιακού περιβάλλοντος.IDLE — Python editor and shell είναι ένας βασικός επεξεργαστής και περιβάλλον ερμηνευτή που περιλαμβάνεται με την τυπική διανομή Python. ΤοIDLE περιλαμβάνει ένα μενού Βοήθειας που σας επιτρέπει να αποκτήσετε πρόσβαση στην τεκμηρίωση Python. Εάν είστε εντελώς νέοι στην Python, μπορείτε να διαβάσετε την εισαγωγή του εγχειριδίου σε αυτό το έγγραφο.
Υπάρχουν πολλοί άλλοι επεξεργαστές και IDE διαθέσιμοι, δείτεΕπεξεργαστές Κειμένου και IDEs για περισσότερες πληροφορίες.
Για να εκτελέσετε ένα αρχείο script Python από το παράθυρο τερματικού, μπορείτε να καλέσετε τον ερμηνευτή με το όνομα του αρχείου script:
python3.13
myscript.py
Για να εκτελέσετε το script σας από το Finder, μπορείτε είτε:
Σύρετε το στοPython Launcher.
Επιλέξτε τοPython Launcher ως την προεπιλεγμένη εφαρμογή για να ανοίξετε το script σας (ή οποιοδήποτε
.py
script) μέσω του παραθύρου πληροφοριών Finder και κάντε διπλό κλικ σε αυτό. ΤοPython Launcher έχει διάφορες προτιμήσεις για να ελέγξει πώς εκκινείται το script σας. Η επιλογή-μεταφορά σας επιτρέπει να αλλάξετε αυτά για μία κλήση ή χρησιμοποιήστε το μενούΠροτιμήσεις
για να αλλάξετε τα πράγματα παγκοσμίως.
Να είστε προσεκτικοί ότι η εκτέλεση του script απευθείας από το macOS Finder μπορεί να παράγει διαφορετικά αποτελέσματα από την εκτέλεση από ένα παράθυρο τερματικού καθώς το script δεν θα εκτελείται στο συνήθη περιβάλλον κελύφους που περιλαμβάνει οποιαδήποτε ρύθμιση μεταβλητών περιβάλλοντος σε προφίλ κελύφους. Και, όπως με οποιοδήποτε άλλο script ή πρόγραμμα, να είστε σίγουροι για το τι πρόκειται να εκτελέσετε.
5.2.Εναλλακτικές Διανομές¶
Εκτός από τον τυπικό εγκαταστάτηpython.org
για macOS, υπάρχουν τρίτες διανομές για macOS που μπορεί να περιλαμβάνουν πρόσθετη λειτουργικότητα. Ορισμένες δημοφιλείς διανομές και τα βασικά χαρακτηριστικά τους:
- ActivePython
Εγκαταστάτης με συμβατότητα πολλών πλατφορμών, τεκμηρίωση
- Anaconda
Δημοφιλή επιστημονικά modules (όπως numpy, scipy και pandas) και ο
conda
διαχειριστής πακέτων.- Homebrew
Διαχειριστής πακέτων για macOS που περιλαμβάνει πολλές εκδόσεις Python και πολλά τρίτα πακέτα Python (συμπεριλαμβανομένων των numpy, scipy και pandas).
- MacPorts
Ένας άλλος διαχειριστής πακέτων για macOS που περιλαμβάνει πολλές εκδόσεις Python και πολλά τρίτα πακέτα Python. Μπορεί να περιλαμβάνει προ-κατασκευασμένες εκδόσεις της Python και πολλά πακέτα για παλαιότερες εκδόσεις του macOS.
Σημειώστε ότι οι διανομές ενδέχεται να μην περιλαμβάνουν τις τελευταίες εκδόσεις της Python ή άλλων βιβλιοθηκών και δεν υποστηρίζονται ή συντηρούνται από την κύρια ομάδα Python.
5.3.Εγκατάσταση πρόσθετων πακέτων Python¶
Ανατρέξτε στονPython Packaging User Guide για περισσότερες πληροφορίες.
5.4.Προγραμματισμός GUI¶
Υπάρχουν πολλές επιλογές για την κατασκευή εφαρμογών GUI στον Mac με Python.
Η τυπική βιβλιοθήκη GUI Python είναιtkinter
, βασισμένη στο διαλειτουργικό εργαλείο Tk (https://www.tcl.tk). Μια εγγενής έκδοση Tk macOS περιλαμβάνεται με τον εγκαταστάτη.
ΤοPyObjC είναι ένα Python binding στο πλαίσιο Objective-C/Cocoa της Apple. Πληροφορίες σχετικά με το PyObjC είναι διαθέσιμες απόpyobjc.
Ένας αριθμός εναλλακτικών εργαλείων GUI macOS είναι διαθέσιμος, συμπεριλαμβανομένων:
PySide: Επίσημα Python bindings στοQt GUI toolkit.
PyQt: Εναλλακτικά Python bindings στο Qt.
Kivy: Ένα διαλειτουργικό εργαλείο GUI που υποστηρίζει desktop και mobile πλατφόρμες.
Toga: Μέρος τουBeeWare Project; υποστηρίζει εφαρμογές desktop, mobile, web και κονσόλας εφαρμογές.
wxPython: Ένα διαλειτουργικό εργαλείο που υποστηρίζει desktop πλατφόρμες.
5.5.Προχωρημένα θέματα¶
5.5.1.Εγκατάσταση εκδόσεων Free-threaded¶
Added in version 3.13:(Πειραματικό)
Σημείωση
Όλα όσα περιγράφονται σε αυτήν την ενότητα θεωρούνται πειραματικά και θα πρέπει να αναμένονται να αλλάξουν σε μελλοντικές εκδόσεις.
Το πακέτο εγκατάστασηςpython.org
Python for macOS μπορεί προαιρετικά να εγκαταστήσει μια επιπλέον έκδοση της Python 3.13 που υποστηρίζειPEP 703, την πειραματική δυνατότητα ελεύθερης νηματοποίησης (threading) (εκτέλεση με τοglobal interpreter lock απενεργοποιημένο). Ελέγξτε τη σελίδα κυκλοφορίας στοpython.org
για πιθανές ενημερωμένες πληροφορίες.
Επειδή αυτή η δυνατότητα εξακολουθεί να θεωρείται πειραματική, η υποστήριξή της δεν εγκαθίσταται από προεπιλογή. Είναι συσκευασμένο ως ξεχωριστή επιλογή εγκατάστασης, διαθέσιμη κάνοντας κλικ στο κουμπίΠροσαρμογή στο βήμαΤύπος εγκατάστασης του εγκαταστάτη όπως περιγράφεται παραπάνω.

Εάν το πλαίσιο δίπλα στο όνομα πακέτουFree-threaded Python είναι επιλεγμένο, θα εγκατασταθεί επίσης ένα ξεχωριστόPythonT.framework
δίπλα στο κανονικόPython.framework
στο/Library/Frameworks
. Αυτή η διαμόρφωση επιτρέπει σε μια έκδοση Python 3.13 ελεύθερης νηματοποίησης να συγκατοικεί στο σύστημά σας με μια παραδοσιακή (μόνο GIL) Python 3.13 έκδοση με ελάχιστο κίνδυνο κατά την εγκατάσταση ή τη δοκιμή. Αυτή η διάταξη εγκατάστασης είναι πειραματική και υπόκειται σε αλλαγές σε μελλοντικές εκδόσεις.
Γνωστές προφυλάξεις και περιορισμοί:
ToUNIX command-line tools πακέτο, το οποίο επιλέγεται από προεπιλογή, θα εγκαταστήσει συνδέσμους στο
/usr/local/bin
γιαpython3.13t
, τον ερμηνευτή ελεύθερης νηματοποίησης καιpython3.13t-config
, ένα βοηθητικό πρόγραμμα διαμόρφωσης που μπορεί να είναι χρήσιμο για κατασκευαστές πακέτων. Δεδομένου ότι το/usr/local/bin
περιλαμβάνεται συνήθως στη μεταβλητή περιβάλλοντοςPATH
του κελύφους σας, στις περισσότερες περιπτώσεις δεν θα χρειαστούν αλλαγές στις μεταβλητές περιβάλλοντοςPATH
για να χρησιμοποιήσετεpython3.13t
.Για αυτήν την έκδοση, το πακέτοShell profile updater και το
UpdateShellProfile.command
στο/Applications/Python3.13/
δεν υποστηρίζουν το πακέτο ελεύθερης νηματοποίησης.Η έκδοση ελεύθερης νηματοποίησης και η παραδοσιακή έκδοση έχουν ξεχωριστές διαδρομές αναζήτησης και ξεχωριστούς καταλόγους
site-packages
, οπότε, από προεπιλογή, εάν χρειάζεστε ένα πακέτο διαθέσιμο και στις δύο εκδόσεις, μπορεί να χρειαστεί να εγκατασταθεί και στις δύο. Το πακέτο ελεύθερης νηματοποίησης θα εγκαταστήσει μια ξεχωριστή έκδοση τουpip για χρήση μεpython3.13t
.Για να εγκαταστήσετε ένα πακέτο χρησιμοποιώνταςpip χωρίςvenv:
python3.13t
-mpipinstall<package_name>
Όταν εργάζεστε με πολλές Python περιβάλλοντα, είναι συνήθως ασφαλέστερο και ευκολότερο ναcreate and use virtual environments. Αυτό μπορεί να αποφύγει πιθανά ονόματα εντολών συγκρούσεων και σύγχυση σχετικά με το ποια Python είναι σε χρήση:
python3.13t
-mvenv<venv_name>
τότεactivate.
Για να εκτελέσετε μια έκδοση ελεύθερης νηματοποίησης του IDLE:
python3.13t
-midlelib
Οι ερμηνευτές και στις δύο εκδόσεις ανταγωνίζονται στις ίδιεςPYTHON environment variables που μπορεί να έχουν απροσδόκητα αποτελέσματα, για παράδειγμα, εάν έχετε ρυθμίσει το
PYTHONPATH
σε ένα προφίλ κελύφους. Εάν είναι απαραίτητο, υπάρχουνcommand line options όπως-E
για να αγνοήσετε αυτές τις μεταβλητές περιβάλλοντος.Η έκδοση ελεύθερης νηματοποίησης συνδέεται με τις βιβλιοθήκες κοινής χρήσης τρίτων, όπως
OpenSSL
καιTk
, που είναι εγκατεστημένες στο παραδοσιακό πλαίσιο. Αυτό σημαίνει ότι και οι δύο εκδόσεις μοιράζονται επίσης ένα σύνολο πιστοποιητικών εμπιστοσύνης όπως εγκαθίστανται από τοInstall Certificates.command script, επομένως χρειάζεται να εκτελείται μόνο μία φορά.Εάν δεν μπορείτε να εξαρτηθείτε από το σύνδεσμο στο
/usr/local/bin
που δείχνει στην έκδοσηpython3.13t
ελεύθερης νηματοποίησης (για παράδειγμα, εάν θέλετε να εγκαταστήσετε τη δική σας έκδοση εκεί ή κάποια άλλη διανομή το κάνει), μπορείτε να ορίσετε ρητά τη μεταβλητή περιβάλλοντοςPATH
του κελύφους σας για να περιλαμβάνει το κατάλογοbin
του πλαισίουPythonT
:exportPATH="/Library/Frameworks/PythonT.framework/Versions/3.13/bin":"$PATH"
Η παραδοσιακή εγκατάσταση πλαισίου από προεπιλογή κάνει κάτι παρόμοιο, εκτός από το
Python.framework
. Να είστε προσεκτικοί ότι η παρουσία και των δύο καταλόγωνbin
πλαισίου στοPATH
μπορεί να οδηγήσει σε σύγχυση εάν υπάρχουν διπλά ονόματα όπωςpython3.13
και στις δύο. Ποιο χρησιμοποιείται στην πραγματικότητα εξαρτάται από τη σειρά που εμφανίζονται στοPATH
. Οι εντολέςwhichpython3.x
ήwhichpython3.xt
μπορούν να δείξουν ποια διαδρομή χρησιμοποιείται. Η χρήση εικονικών περιβαλλόντων μπορεί να βοηθήσει στην αποφυγή τέτοιων αμφισημιών. Μια άλλη επιλογή μπορεί να είναι η δημιουργία ενός κελύφουςalias στον επιθυμητό ερμηνευτή, όπως:aliaspy3.13="/Library/Frameworks/Python.framework/Versions/3.13/bin/python3.13"aliaspy3.13t="/Library/Frameworks/PythonT.framework/Versions/3.13/bin/python3.13t"
5.5.2.Εγκατάσταση χρησιμοποιώντας τη γραμμή εντολών¶
Εάν θέλετε να χρησιμοποιήσετε αυτοματισμό για να εγκαταστήσετε το πακέτο εγκατάστασηςpython.org
(παρά να χρησιμοποιήσετε την οικεία εφαρμογήInstaller GUI macOS), το βοηθητικό πρόγραμμαinstaller γραμμής εντολών macOS σας επιτρέπει να επιλέξετε μη προεπιλεγμένες επιλογές, επίσης. Εάν δεν είστε εξοικειωμένοι με τοinstaller, μπορεί να είναι κάπως κρυπτικό (βλ.man installer για περισσότερες πληροφορίες). Ως παράδειγμα, το παρακάτω απόσπασμα κώδικα δείχνει έναν τρόπο να το κάνετε, χρησιμοποιώντας την έκδοση3.13.0b2
και επιλέγοντας την επιλογή ερμηνευτή ελεύθερης νηματοποίησης:
RELEASE="python-3.13.0b2-macos11.pkg"# download installer pkgcurl-Ohttps://www.python.org/ftp/python/3.13.0/${RELEASE}# create installer choicechanges to customize the install:# enable the PythonTFramework-3.13 package# while accepting the other defaults (install all other packages)cat>./choicechanges.plist<<EOF<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><array> <dict> <key>attributeSetting</key> <integer>1</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>org.python.Python.PythonTFramework-3.13</string> </dict></array></plist>EOFsudoinstaller-pkg./${RELEASE}-applyChoiceChangesXML./choicechanges.plist-target/
Μπορείτε στη συνέχεια να ελέγξετε ότι και οι δύο εγκαταστάτες είναι διαθέσιμοι με κάτι σαν:
$# test that the free-threaded interpreter was installed if the Unix Command Tools package was enabled$/usr/local/bin/python3.13t-VVPython 3.13.0b2 experimental free-threading build (v3.13.0b2:3a83b172af, Jun 5 2024, 12:57:31) [Clang 15.0.0 (clang-1500.3.9.4)]$# and the traditional interpreter$/usr/local/bin/python3.13-VVPython 3.13.0b2 (v3.13.0b2:3a83b172af, Jun 5 2024, 12:50:24) [Clang 15.0.0 (clang-1500.3.9.4)]$# test that they are also available without the prefix if /usr/local/bin is on $PATH$python3.13t-VVPython 3.13.0b2 experimental free-threading build (v3.13.0b2:3a83b172af, Jun 5 2024, 12:57:31) [Clang 15.0.0 (clang-1500.3.9.4)]$python3.13-VVPython 3.13.0b2 (v3.13.0b2:3a83b172af, Jun 5 2024, 12:50:24) [Clang 15.0.0 (clang-1500.3.9.4)]
Σημείωση
Τα τρέχοντα προγράμματα εγκατάστασηςpython.org
εγκαθίστανται μόνο σε καθορισμένες τοποθεσίες όπως/Library/Frameworks/
,/Applications
και/usr/local/bin
. Δεν μπορείτε να χρησιμοποιήσετε την επιλογή-domain
τουinstaller για να εγκαταστήσετε σε άλλες τοποθεσίες.
5.5.3.Διανομή εφαρμογών Python¶
Υπάρχει μια σειρά εργαλείων για τη μετατροπή του κώδικα Python σας σε μια αυτόνομη διανεμόμενη εφαρμογή:
py2app: Υποστηρίζει τη δημιουργία macOS
.app
πακέτων από ένα έργο Python.Briefcase: Μέρος τουBeeWare Project; ένα εργαλείο διανομής πολλαπλών πλατφορμών που υποστηρίζει τη δημιουργία
.app
πακέτων σε macOS, καθώς και τη διαχείριση υπογραφής και πιστοποίησης.PyInstaller: Ένα εργαλείο διανομής πολλαπλών πλατφορμών που δημιουργεί ένα μόνο αρχείο ή φάκελο ως διανεμόμενο αντικείμενο.
5.5.4.Συμμόρφωση App Store¶
Οι εφαρμογές που υποβάλλονται για διανομή μέσω του macOS App Store πρέπει να περάσουν τη διαδικασία αναθεώρησης εφαρμογών της Apple. Αυτή η διαδικασία περιλαμβάνει ένα σύνολο αυτοματοποιημένων κανόνων επικύρωσης που ελέγχουν το υποβληθέν πακέτο εφαρμογής για προβληματικό κώδικα.
Η βιβλιοθήκη προτύπων Python περιέχει κάποιον κώδικα που είναι γνωστό ότι παραβιάζει αυτούς τους αυτοματοποιημένους κανόνες. Ενώ αυτές οι παραβιάσεις φαίνεται να είναι ψευδώς θετικές, οι κανόνες αναθεώρησης της Apple δεν μπορούν να αμφισβητηθούν. Επομένως, είναι απαραίτητο να τροποποιηθεί η βιβλιοθήκη προτύπων Python για να περάσει μια εφαρμογή την αναθεώρηση του App Store.
Το δέντρο πηγών Python περιέχειένα αρχείο patch που θα αφαιρέσει όλο τον κώδικα που είναι γνωστό ότι προκαλεί προβλήματα με τη διαδικασία αναθεώρησης του App Store. Αυτή η επιδιόρθωση εφαρμόζεται αυτόματα όταν η CPython διαμορφώνεται με την--with-app-store-compliance
επιλογή.
Αυτή η επιδιόρθωση δεν απαιτείται κανονικά για τη χρήση της CPython σε Mac. Ούτε απαιτείται εάν διανέμετε μια εφαρμογήεκτός του macOS App Store. Απαιτείταιμόνο εάν χρησιμοποιείτε το macOS App Store ως κανάλι διανομής.
5.6.Άλλοι πόροι¶
Ηpython.org Help page έχει συνδέσμους σε πολλούς χρήσιμους πόρους. ΗPythonmac-SIG mailing list είναι ένας άλλος πόρος υποστήριξης ειδικά για χρήστες και προγραμματιστές Python στο Mac.