Question

Je suis un programmeur amateur (uniquement en TI-Basic avant maintenant), et après beaucoup, beaucoup, beaucoup à débattre avec moi-même, je l'ai décidé d'apprendre Python. Je n'ai pas une tonne de temps libre pour enseigner moi-même une centaine de langues et tous les programmes que je fais sera pour un usage personnel ou pour distribuer aux personnes qui en ont besoin, alors j'ai décidé que je avais besoin d'un bon langage fort pour être bon à . Mes questions:

  1. est python assez puissant pour traiter la plupart des choses qu'un programmeur typique pourrait faire dans son hors-temps? J'ai dans les choses de l'esprit comme des générateurs de stat complexes basés sur l'entrée d'utilisateur pour les jeux de table, faire de petits jeux, d'automatiser l'installation des processus, et construire des sites Web interactifs, mais probablement une centaine de choses le long de ces lignes

  2. Est-ce que les tâches de mise en réseau de poignée de python assez bien?

  3. Peut être source de python brouillées, ou est-ce qu'il va être open source par nature? La raison pour laquelle je demande c'est parce que si je fais quelque chose de cool et de le distribuer, je ne veux pas un script kiddie con pour modifier son nom et dire qu'il a écrit

  4. Et comment populaire est python, par rapport à d'autres langues. Idéalement, ma langue serait bon et utile avec l'aide disponible en ligne sans difficulté extrême, mais pas si commun que chaque imbécile avec un ordinateur sait python. J'aime l'idée de connaître une langue peu obscure.

Merci une tonne pour toute aide que vous pouvez fournir.

Était-ce utile?

La solution

  

est python assez puissant pour gérer   la plupart des choses?

Oui. Période. Étudiez jeu pour EVE Online plus d'informations. Regardez cadre pygame . libre d'utiliser gratuitement Google pour trouver plus.

  

Est-ce que les tâches de mise en réseau de poignée de python   assez bien?

Oui. Regardez le nombre de cadres web Python plus le de cadre tordu. Ne hésitez pas à utiliser Google pour rechercher des réseaux Python.

  

Peut être brouillées source python?

Pas utile. Ce n'est pas C.

  

Et comment populaire est python, par rapport à   d'autres langues?

Regardez l'index TIOBE .

Autres conseils

Je pense que Python est très puissant pour faire beaucoup de choses, mais tout comme Java et C ++, il dépend souvent de bonnes bibliothèques tierces. Je viens d'un milieu Java mais utilise Python pour beaucoup de choses, et ça a été un tour d'amusement. Je l'ai fait des choses comme les statistiques et l'automatisation, pas sûr de l'interface utilisateur bien que dépend souvent de la boîte à outils plus que la langue.

réseau Python fonctionne bien. Je ne sais pas si je l'utilise pour construire un système de négociation algorithmique rapide ou une application VOIP, mais pour la plupart des fins, en particulier à des niveaux plus élevés d'abstraction, il est très bien et facile à utiliser. Vous auriez besoin de bibliothèques externes pour des choses comme SSH ou FTP.

Python est très populaire et a un très bon soutien en ligne, communauté active, et les grandes entreprises (likeGoogle) qui l'utilisent. J'ai trouvé le tutoriel en ligne officiel et référence excellente.

Je dois dire que je suis en désaccord avec la ligne « tous les con avec un ordinateur ». Il y a une différence entre la connaissance d'une langue et l'utiliser à droite, et c'est vrai sur toutes les langues, même naturels :) Python a un grand nombre d'éléments fonctionnels qui ne sont pas aussi trivial d'utiliser pour les personnes venant d'un arrière-plan de la procédure, alors il y a toujours de croissance.

Le seul problème avec Python par rapport à des langages comme C et Java est qu'il ne soit pas statiquement typé. Cela rend beaucoup plus rapide pour écrire du code, mais rend également beaucoup plus facile *) de faire des erreurs qui peuvent être tout à fait désagréable à déboguer. Par exemple, la même variable peut contenir une référence de chaîne à un moment donné, et une référence à une liste de chaînes à un autre point.

  1. Absolument.
  2. Quel type de réseau? Il a prise, http, xml, smtp / pop, telnet, et bien plus encore construit.
  3. Python obscurcissement ne sera pas loin d'être aussi bon que un langage compilé. En général, ce n'est pas un problème.
  4. Il est le 9 balise la plus populaire sur StackOverflow, donc il y a beaucoup d'aide disponible.
  

est python assez puissant pour traiter la plupart des choses qu'un programmeur typique pourrait faire dans son hors-temps? J'ai dans les choses de l'esprit comme des générateurs de stat complexes basés sur l'entrée d'utilisateur pour les jeux de table, ce qui rend les petits jeux, d'automatiser les processus d'installation et construire des sites Web interactifs, mais probablement une centaine de choses le long de ces lignes

Certainement. Python est un bon outil pour tous ceux, sauf l'automatisation des processus d'installer, où il pourrait être le bon outil, mais plus probablement l'outil droit sera probablement décidée par ce que vous automatisez spécifiquement.

  

Est-ce que les tâches de mise en réseau de poignée de python assez bien?

Oui. Vous voulez regarder dans Twisted .

  

Peut source python être brouillées, ou est-il va être open source par nature? La raison pour laquelle je demande c'est parce que si je fais quelque chose de cool et de le distribuer, je ne veux pas un script kiddie con pour modifier son nom et dire qu'il a écrit

« open source » fait référence à la licence de votre code, pas de son code lisibilité source. Hiding code source Python est pas particulièrement possible, et les résultats de décompilation Python bytecode se traduira par un code beaucoup plus lisible que les outils équivalents dans les langues comme C. Ne vous inquiétez pas ça! Vous pouvez » t empêcher les gens de voler votre voiture ou votre ordinateur s'ils sont prêts à enfreindre la loi, et vous ne pouvez pas faire la même chose pour votre code dans toutes les langues.

  

Et comment populaire est python, par rapport à d'autres langues. Idéalement, ma langue serait bon et utile avec l'aide disponible en ligne sans difficulté extrême, mais pas si commun que chaque imbécile avec un ordinateur sait python. J'aime l'idée de connaître une langue peu obscure.

Ceci est une question sans réponse. Google vous donnera beaucoup de résultats contradictoires avec des mesures différentes, la plupart d'entre eux utiles. Tu es aussi un peu stupide;)


En ce qui concerne les matériaux d'apprentissage vont, je vous recommande Comment penser comme un informaticien , qui est un bon texte qui ne peut prétendre à aucune connaissance de programmation existante. Il est disponible gratuitement en ligne, ou vous pouvez acheter une copie d'impression si vous préférez. (Ne pas déranger 3.x apprendre encore Il n'y a pas assez de soutien de la bibliothèque pour faire des choses beaucoup plus utiles que vous voulez faire, et quand il est ramasser sera un jeu d'enfant,. Ce n'est pas très différent de 2,5 / 6/7 .)

  1. Probablement oui. Peut-être la chose crissement stat sera un peu lent, et peut-être un jeu en fonction de ce genre de jeu, mais en général la performance est assez bonne, et vous faire économiser beaucoup de temps sur la programmation proprement dite. Si vous avez vraiment besoin de performance, vous pouvez faire un module en C, mais en général, il y a une bibliothèque écrite pour faire ce que vous voulez ..

  2. Je ne l'ai pas utilisé, mais il y a un cadre appelé Twisted qui semble être assez bon.

  3. Non. Bytecode peut être décompilé facilement, et il ne fonctionne que sur une version spécifique de Python, de sorte que votre code est pas portable.

  4. Python est assez populaire et le pypi a une grande liste de troisième les bibliothèques du parti. Ce n'est pas aussi répandue que, par exemple, Java, mais beaucoup de gens l'utilisent et vous pouvez probablement obtenir des réponses pour ce que vous voulez.

Points 1 et 2:. YEAH HELL

Le point 4: en quelque sorte. Python est bon à des trucs de réseau. Ce n'est pas Java ou C ++. Il suffit d'utiliser zlib (bibliothèque zip) et cornichon (sérialisation) pour tout, et regardez xmlrpclib si vous avez besoin IPC.

Le point 3: Non. Cependant, vous pouvez écrire des modules de C parties (pour les performances critiques et difficiles à copier) de votre code, et qui le rendrait non-trivial à l'ingénierie inverse

python est à la hauteur (et mieux) pendant 1, 2 et 4.

La meilleure solution pour 3 de ce que vous décrivez serait probablement de faire vos programmes vraiment open-source avec GPL ou BSD comme licence. Cette façon dont les gens vont modifier vos sources super-cool (mais souvent les programmeurs expérimentés, pas seulement script kiddies) et appuyer sur puis, mais laissez votre nom dans la postérité.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top