Python lancé par des programmeurs C

Comment avez-vous décidé d'étudier Python?

Le temps a passé, car c'est un sujet brûlant depuis longtemps et je voulais y toucher ... Récemment, il y avait des enfants autour de moi qui ont touché Python, et j'ai reçu des conseils de gens d'affaires pour essayer d'autres langues, donc je sens que ma motivation pour étudier a augmenté.

De côté

Cette image a été dessinée par Chomado. Python est mignon, non? pythonChan

Avant de lire cet article

Veuillez noter que l'affiche a déjà touché ** C / C ++ **, ** Java **, ** C # **, donc j'écrirai l'article dans une perspective de comparaison avec ces langages basés sur C.

Je veux toucher Opaison

Je suis désolé pour la dernière histoire. Je veux juste dire. Voici un résumé de la grammaire de base spécifique de Python. Étant donné que le contenu de l'article de référence est omis à ma manière, veuillez consulter l'article de référence pour plus de détails.

Pas besoin de point-virgule

Comme le titre l'indique, je n'ai plus besoin d'écrire, mais je n'ai pas besoin d'ajouter un point-virgule à la fin de la phrase, donc un type de travail est réduit! !! Personnellement, je touche généralement les langages de type C, donc je sens que quelque chose ne va pas, mais lol

Pas besoin de spécifier le type

En C / C ++ etc., le type doit être spécifié lors de la déclaration d'une variable.

C++


int num = 100;

S'il s'agit de Python, ce sera comme ça.

Python


num = 100

Il semble que Python fasse des choses auto et var (inférence de type) en C ++ et C # par défaut. ** (saisie dynamique) ** Cependant, il y a certains avantages et inconvénients car il est parfois préférable de clarifier. ** À propos, les arguments de fonction et les valeurs de retour n'ont pas non plus de spécification de type. ** **

Pas besoin de crochets intermédiaires (pas besoin de si ou pour)

C'est plein de pas lol

Python


num = 77
if num % 2 == 0:
  print("Est même")
else:
  print("Est impair")

Il semble que la condition et le traitement soient séparés par **: (deux-points) ** au lieu de l'absence de crochets du milieu. ** Il semble juger la hiérarchie en indentant ** De plus, il semble que les conditions telles que if, for et while ne soient pas entre parenthèses. Dans ce cas, c'est paisible car il n'y a pas de guerre à la position du support médian ...

Il n'y a pas de commutateur ~ case et faites ~ pendant

Pas comme le titre l'indique. J'utilise rarement le do-while. Il semble que si ~ elif ~ else est utilisé à la place de switch. Notez que cela ressemble à ** elif **, pas autrement si. (Pourquoi l'avez-vous omis ...)

Il n'y a aucune contrainte de type sur la liste

C'est un tableau en C, mais contrairement à un tableau, les listes Python n'ont aucune restriction de type **, il semble donc normal d'avoir un mélange de types numériques et de chaînes de caractères.

Python pour est une extension pour (foreach en C #)

Python


arrayList = ["cat",100,25.25,"Python"]

#Faites demi-tour dans la liste
for array in arrayList:
   print(array)

#Si vous souhaitez spécifier par index et tournez pour
for index in range(0,10):
  print(index)

Conformément aux commentaires dans le code ci-dessus. Nous avons préparé un tableau de 0 à 9 en utilisant range. Au fait, le commentaire est # au lieu de ** // et '' '~' '' ** au lieu de / * ~ * /.

Système opérateur

une fonction

Les fonctions Python sont traitées comme des objets de fonction.

Python


def Add(x,y):
  return x + y

Comme mentionné ci-dessus, vous n'avez pas besoin de spécifier le type, vous pouvez donc dessiner comme ça. Si vous ajoutez ** def ** à l'avant, c'est une fonction. Je l'aime parce que c'est si simple. De plus, ce qui est génial à ce sujet, c'est qu'il n'y a pas de spécification de type, vous pouvez donc le faire également.

Python


print(Add(2,5))
print(Add(1.6,4.8))
print(Add("Hello","World"))

Il peut être géré comme une fonction de modèle en C ++ ou C #. (Il est trop pratique de ne pas spécifier le type avec <>) Cependant, il semble que la fonction ne puisse pas être surchargée. Si vous voulez faire quelque chose de similaire, vous pouvez utiliser les arguments par défaut.

déclaration de réussite

Il existe une instruction qui passe sans erreur sans écrire un processus appelé instruction pass.

Python


def AddPosition():
  #TODO:Mis en œuvre plus tard
  pass

Il semble que l'instruction pass soit utilisée lorsque vous souhaitez l'implémenter plus tard comme ceci. Je vois.

Autre

--import est C comme #include

Résumé

Je pense que c'est la grammaire de base. Les fonctionnalités qui sont également C ++ et C # sont omises. Voir l'article de référence pour plus de détails. Après avoir étudié légèrement, j'ai senti qu'il était facile d'écrire du code hautement lisible. À l'avenir, j'aimerais en savoir plus sur l'automatisation et l'IA en utilisant Python.

Aussi, si vous avez des commentaires ou des conseils sur Python, n'hésitez pas à commenter!

Article de référence

Une introduction à Python pour les programmeurs en langage C https://qiita.com/shiracamus/items/fd35c685e9679323471f

Différences que les ingénieurs C # ont ressenties lors de l'apprentissage de Python pour la première fois https://qiita.com/CEML/items/29944cbeb8e38171a630

Comparaison des deux pour passer de C # à Python https://qiita.com/kent-u/items/e6b210d38ca39b4cd107

C # er a étudié Python, parlons donc des différences tout en les comparant. Partie 1 Syntaxe https://hiroronn.hatenablog.jp/entry/20170717/1500281854

Premiers pas avec Python https://python.keicode.com/

Recommended Posts

Python lancé par des programmeurs C
a commencé python
python, openFrameworks (c ++)
Communication socket par langage C et Python
Une introduction à Python pour les programmeurs en langage C
Jugement des nombres premiers par Python
Django 1.11 a démarré avec Python3.6
Mémo de visualisation par Python
Traitement de la communication par Python
Pointeur de modèle d'extension Python C / C ++
1.1 Premiers pas avec Python
Premiers pas avec Python
Next Python en langage C
Réponse de Beamformer par python
API C en Python 3
Premiers pas avec Python
ABC147 C --HonestOrUnkind2 [Python]
[Introduction à python] Introduction rapide à Python pour les programmeurs C ++ occupés
Mémo de "Cython-Accélérer Python en fusionnant avec C"
Étendre python en C ++ (Boost.NumPy)
Introduction aux fonctions Python
Comparaison de vitesse de Python, Java, C ++
PyTorch C ++ VS Python (édition 2019)
API Web EXE par Python
Programme de formation des nouveaux arrivants par Python
Un programmeur C / C ++ défie Python (édition de classe)
Pin python géré par conda
Mémorandum ABC [ABC163 C --managementr] (Python)
Premiers pas avec Python Django (4)
Recherche binaire en Python / C ++
Premiers pas avec Python Django (3)
Séparez les nombres par 3 chiffres (python)
Modèle de commutation de Markov par Python
Sélection en plusieurs étapes (C # / Python) (ancien)
J'ai essayé l'extension C de Python
Introduction à Python Django (6)
Commencez avec Python! ~ ② Grammaire ~
Les liaisons Python IfcOpenShell commencent
Premiers pas avec Python Django (5)
Jugement de la plateforme (OS) par Python
Trier par date en python
Passer la liste de Python vers C ++ par référence dans pybind11
Orientation des objets Prolog pour les programmeurs Python
Mémorandum ABC [ABC159 C - Volume maximum] (Python)
Résoudre ABC163 A ~ C avec Python
Premiers pas avec Python responder v2
Commencez avec Python! ~ ① Construction de l'environnement ~
Appeler C depuis Python avec DragonFFI
Créer Awaitable avec l'API Python / C
Lien pour commencer avec python
[Python] Tri itérable selon plusieurs conditions
Sélection en plusieurs étapes (Go / C # / Ruby / Python)
Extension du dictionnaire python par argument
Explication ABC127 A, B, C (python)
Premiers pas avec les applications Web Python
Résumé de l'apprentissage automatique par les débutants de Python
ABC166 en Python A ~ C problème