J'ai récemment envisagé de passer au langage de programmation Python. Actuellement, Matlab est la langue de choix dans mon département pour le développement rapide et le prototypage du code. C'est très bien à cela, mais Mathworks (la société qui produit MATLAB) bricole avec les conditions de licence, ce qui entraîne des tracas où aucun ne devrait exister. P>
6 Réponses :
Si vous basculez ou ne dépendez pas de ce que vous pensez de Python. J'adore moi-même Python, et je sais que c'est extrêmement efficace pour le prototypage rapide. La syntaxe est propre et nette, et très facile à apprendre. P>
Pour faire votre décision, je vous recommande de visiter la page d'accueil, Python.org et avoir un coup d'œil aux docs. p>
Python est certainement utilisable comme remplacement de MATLAB pour de nombreux cas, en utilisant Numpy, Scipy et Matplotlib (voir mon Guide de configuration de l'environnement de développement pour savoir comment installer tous ces packages). Cependant, il existe des choses que Matlab fait mieux, telles que la fourniture de bibliothèques pour interfacer avec le matériel de collecte de données. Vous devrez donc essayer Python et voir si cela répond à vos exigences. P>
Le choix revient au coût. Si vous êtes heureux de payer pour MATLAB - surtout si vous utilisez les boîtes à outils - vous trouverez probablement Python ne fournit pas un tel emballage intégré. Avoir une matrice lorsque le type de données de base rend MATLAB un langage intuitif pour de nombreuses tâches mathématiques. Personnellement, je trouve le ceci couplé au débogueur inestimable. P>
Python, à travers des numpides, Scipy et similaires fournissent la même fonctionnalité. Il y aura bien sûr une courbe d'apprentissage à surmonter. P>
Si vous effectuez des tâches de programmation générales, les solutions de mathématiques ne sont pas particulièrement appliquées, Python est une langue extrêmement facile à utiliser et à adapter. C'est aussi gratuit - ce qui peut être un facteur déterminant. P>
Si vous recherchez un remplacement MATLAB en gros, vous voudrez peut-être jeter un coup d'œil sur Python (x, y) . Il vise à fournir une expérience plus cohérente, plutôt que de laisser de nouveaux utilisateurs à pêcher sur Internet eux-mêmes recherchant les bons composants à utiliser. P>
Une autre option est gnu octave , qui est essentiellement un clone open-source de matlab . p>
J'ai trouvé Python + Numpy + Scipey + Matplotlib + ipython + [paquets SCI / numériques aléatoires] Pour être presque un remplacement complet de MATLAB. Il manque certainement certains forfaits manquants, donc s'il existe un ensemble spécialisé d'outils disponibles dans Matlab mais pas à Python, cela pourrait être un problème, mais sinon, je n'ai pas regardé en arrière. P>
Je vais mentionner quelques avantages distincts de Python sur Matlab P>
Personnellement, j'utilise personnellement la distribution de Python d'enthousiasme pour beaucoup de mon travail, car il emballe tout et est gratuit pour les individus de l'université. J'ai alternativement construit Python et toutes ses bibliothèques et modules de zéro. La gestion du module est peut-être la plus grande faiblesse de Python, mais il y a de bonnes choses pour aider, comme virtualenv code> et
pip code> p> P>
"Combien de systèmes de OOP différents ont été mangés dans Matlab?" J'ai utilisé seulement six: 1. Old Style Oo 2. Old Shema 3. Émulation avec fermetures (fonction imbriquée) 4. Émulation avec global / persistant 5. Nouveau style OO 6. Utilisation d'objets Java. Y a-t-il plus?
Pourquoi dites-vous que la gestion du module est une faiblesse pour Python? Je pense que c'est incroyable. Vous pouvez avoir des modules locaux ou globaux (à l'échelle du système) et tout le système de dépassement de noms permet de garder tout ce qui est propre.
Je pense qu'il pourrait y avoir une petite idée fausse: par "Gestion du module", la réponse fait référence à "Distribution du module" (ce qui est en effet un défi, être adressé progressivement par pip code> change ces derniers temps), pas les espaces de noms, Quel "" Les espaces de noms sont une bonne idée de klaxon - faisons plus de ceux-ci! " a>.
Vous pouvez élaborer plus sur vos besoins spécifiques (comme quelles sont les boîtes à outils spécifiques utilisées). Merci