Ich habe ein reines Python-Modul, das für Python 2.6 und 2.7 funktioniert. Anstatt das Modul in die Python-spezifischen Pfade zu setzen, ist es möglich, die Bibliothek an einem Ort zu platzieren, auf den sowohl Python 2.6 als auch 2.7 zugreifen können? System ist Ubuntu.Wo sollte Version unabhängige Python-Bibliothek gehen?
Antwort
standardmäßig python26 sucht nach Modulen in /python2.6/ Ordner, während python27 in /python2.7/ Ordner aussieht.
Ein Weg, um Ihr Ziel zu erreichen, wäre zu Systempfad einen anderen (gemeinsamen) Standort hinzuzufügen, durch PYTHONPATH Systemvariablen ändern:
export PYTHONPATH=/common/location
Ich hatte gehofft PYTHONPATH nicht zu berühren ... –
Sie die Bibliothek in einem Ort wie /opt
installieren und dann zwei erstellen weiche Links innerhalb /usr/lib/python2.6
und /usr/lib/python2.7
zeigt auf diese Bibliothek.
Die Symlinks machen sehr viel Sinn, aber ich fragte mich nur, ob ich es vermeiden konnte, den Python zu berühren versionsspezifische Pfade (auch wenn es nur um einen Symlink zu erstellen). –
- 1. Welche Version von Python Opencv sollte ich gehen?
- 2. Hibernate Version Gläser, Maven, was sollte zusammen gehen?
- 3. .NET Office-Interop mit Version unabhängige Office
- 4. Sollte UISwitch nicht den umgekehrten Weg gehen?
- 5. Wo sollte ich Entwicklungstools installieren?
- 6. Wo gehen Bilder in IONIC 2
- 7. Basierend auf DDD-Praktiken, wo sollte diese Logik gehen und wie vermeide ich unnötige Abhängigkeiten?
- 8. Wo sollte die manuelle Authentifizierungslogik im Frühling Sicherheit gehen - Service-Layer oder Präsentationsebene?
- 9. MVC wo sollte die Logik gehen der Controller oder das View-Modell
- 10. Wo die neueste Version jrockit
- 11. Array, wo der Schlüssel sollte
- 12. Wo sollte Rx verwendet werden?
- 13. Wo sollte ich Database.EnsureCreated platzieren?
- 14. Wo sollte ich Datenbankdateien speichern?
- 15. Wo sollte ich Dateien speichern
- 16. Wo sollte ich Navigationscode eingeben?
- 17. Wo sollte die Validierungslogik implementiert werden?
- 18. Wo sollte ich gradle.properties in Jenkins setzen
- 19. Sollte ich in Android Studio gehen oder sollte ich bei Eclipse bleiben?
- 20. In MVC sollte Paginierungsinfo in den Pfad oder Querystring gehen?
- 21. Wo sollte ein kanonischer Domainname durchgesetzt werden?
- 22. Order-unabhängige Hash-Algorithmus
- 23. MEF: Wo sollte ich den CompositionContainer platzieren?
- 24. Eingeschlossene unabhängige Variablen - R
- 25. Wo zum Download v4.0.30319 Microsoft.Expression.Interactions Version 4.0.0.0 Runtime-Version?
- 26. Antlr4 C# Version: Wo Interpreter.SetCharPositionInLine in Version 4.3
- 27. PHP - Wie genau sollte ich die Version
- 28. Welche Version von Android sollte ich entwickeln?
- 29. Wann sollten Daten in/Daten gehen und wann sollte es in/inst/extdata gehen?
- 30. Plattform unabhängige Ressourcenverwaltung
Entwickeln Sie das Modul oder möchten Sie es nur installieren? –
Ich bin der Autor des Moduls. Jetzt frage ich mich, wie ich es auf neuen Maschinen bereitstellen kann, so dass ich mich nicht darum kümmern muss, den richtigen Python-Pfad anzugeben (basierend auf der Standard-Python-Version). –
Wenn Sie ['distutils'] (http://docs.python.org/2/distutils/index.html) auf die normale Weise verwenden, müssen Sie sich keine Gedanken darüber machen, wohin die Dateien gehen müssen. (Obwohl die Benutzer Ihr Modul für jede Python-Version separat installieren müssen) –