Ho bisogno di creare una funzione per ruotare una data matrice (lista di liste) in senso orario, e ho bisogno di usarla nella mia classe Table
. Dove dovrei inserire questa funzione di utilità (chiamata rotateMatrixClockwise
) così posso chiamarla facilmente da una funzione nella mia classe Table
?Dove inserisco le funzioni di utilità nel mio progetto Python?
risposta
Se non si desidera farne un membro della classe Table
, è possibile inserirlo in un modulo utilities
.
Ne fanno una funzione statica ...
- aggiungere il decoratore @staticmethod
- non includono 'sé' come primo argomento
tua definizione potrebbe essere:
@staticmethod
def rotateMatrixClockwise():
# enter code here...
Quale lo renderà richiamabile ovunque si importato 'table' chiamando:
table.rotateMatrixClockwise()
Il decoratore è necessaria solo per dire python che nessun primo argomento implicito è previsto. Se si desidera che le definizioni dei metodi agiscano come C#/Java, dove self è sempre implicito, è possibile utilizzare anche il decoratore '@classmethod'.
Here's the documentation for this coming directly from the python manual.
Nota: mi consiglia di utilizzare classi di utilità solo se la loro codice non può essere accoppiato direttamente ad un modulo perché in genere violano la 'Single Responsibility Principle' di programmazione orientata agli oggetti. È quasi sempre meglio legare la funzionalità di una classe come metodo/membro alla classe.
- 1. Dove inserisco weblogic-application.xml nel mio progetto Maven 2?
- 2. Se una classe "Utilità" è malvagia, dove inserisco il mio codice generico?
- 3. Backbone.js: dove inserisco il mio setup jQuery?
- 4. Dove trovo proguard.cfg nel mio progetto?
- 5. Dove metto funzioni comuni di utilità in iOS 8 + Swift
- 6. Dove sono documentate le funzioni Python di bitbake
- 7. Dove mettere le funzioni di supporto in un progetto phoenix?
- 8. Dove inserisco tutte queste funzioni #defines, in C?
- 9. Dove dovrei inserire le funzioni di utilità di test in Rust?
- 10. Dove posso trovare il file application.exe.config nel mio progetto C#?
- 11. .gitignore file, dove dovrei inserirlo nel mio progetto xcode?
- 12. Come inserisco una dll nel mio progetto - visual studio C# 2010
- 13. Dove inserisco ascoltatori e gestori di eventi?
- 14. Organizzazione delle funzioni di utilità in C++
- 15. Dove inserisco META-INF in Eclipse?
- 16. Dove posso inserire il mio progetto prima_request
- 17. Dove inserire le dipendenze DLL nel progetto Visual Studio C++?
- 18. Dove vanno le funzioni di aiuto angolare?
- 19. Gradle + Robolectric: dove inserisco il file org.robolectric.Config.properties?
- 20. Android: include le funzionalità native StageFright nel mio progetto
- 21. Dove chiamare le funzioni ini_set() nella classe?
- 22. Dove posizionare un modulo di utilità condiviso in OCaml?
- 23. Dove CELERYBEAT_SCHEDULE va nel tuo progetto?
- 24. Memorizzazione di funzioni nel dizionario [Python]
- 25. Dove dovrebbe WSGIPythonPath puntare nel mio virtualenv?
- 26. Uso di pacchetti personalizzati sul mio progetto python
- 27. Controllo delle versioni coerente nel progetto Python
- 28. React.js: componenti riutilizzabili vs funzioni di utilità di mixin
- 29. Dove inserisco il mio CSS, come faccio a collegarlo alla pagina principale?
- 30. Come integrare social-auth nel mio progetto