Wolfram Computation Meets Knowledge

Wolfram Language:
INTRODUCTION RAPIDE POUR PROGRAMMEURS

Affichez des notes supplémentaires pour:
Toutes les sections 
  • À propos de Wolfram Language
  • Affichez des notes supplémentaires pour:...
  • Notes aux programmeurs Java
  • Notes aux programmeurs Python
  • Masquez les notes supplémentaires
Démarrez

Motifs version vidéo

Notes aux programmeurs Java :

Le langage de motifs du Wolfram Language vous permet de décrire des motifs pour des structures symboliques arbitraires, permettant à la manipulation de type regex puissante d'être généralisée à n'importe quelle expression et n'importe quelle forme de données.

Notes aux programmeurs Python :

Le langage de motif de Wolfram Language vous permet de décrire des motifs pour des structures symboliques arbitraires, permettant de généraliser de puissantes manipulations de type regex à toute expression et à toute forme de données.

Les motifs représentent des classes d'expressions. La construction de base de motif _ (prononcé "blank") représente n'importe quelle expression.

Trouvez les cas dans une liste correspondant au motif f[_] :

In[1]:=1
Cases[{f[1], g[2], f[5], g[3]}, f[_]]
Out[1]=1

x_ (abréviation de x:_) représente un motif dont la valeur va être nommée x :

In[2]:=2
Replace[f[100], f[x_] -> x + 5]
Out[2]=2

/. signifie "remplace partout" :

In[3]:=3
{f[1], g[2], f[5], g[3]} /. f[x_] -> x + 5
Out[3]=3

Notes aux programmeurs Java :

Le type de métaprogrammation structurelle illustrée ici est propre à la structure symbolique de Wolfram Language.

Notes aux programmeurs Python :

La métaprogrammation structurelle présentée ici, qui traite le code et les données de la même manière, est unique à la structure symbolique de Wolfram Language.


__ ("double blank") représente toute séquence d'expressions :

In[1]:=1
Cases[{f[1, 2], f[1], g[3]}, f[__]]
Out[1]=1

a | b | c représente a, b ou c :

In[1]:=1
Cases[{f[1], g[2], f[2], f[5], g[3]}, f[1 | 5]]
Out[1]=1

Notes aux programmeurs Java :

Cette utilisation de | ressemble à la notation regex Java, bien qu'en Java | peut aussi indiquer une opération Ou bit à bit.

Notes aux programmeurs Python :

| est utilisée dans les motifs de Wolfram Language similaires à son utilisation dans les expressions régulières Python. Cependant, en Wolfram Language, | fonctionne pour tout type de correspondance de motif symbolique, pas seulement pour les chaînes.

Et fonctionne aussi avec des têtes :

In[2]:=2
Cases[{f[1], g[2], f[2], f[5], g[3]}, (f | g)[2]]
Out[2]=2

_h représente toute expression avec la tête h :

In[1]:=1
Cases[{1, 2.5, 3.5, 4}, _Real]
Out[1]=1

:> est une norme tardive, l'analogue de := pour une règle.

RÉFÉRENCE RAPIDE : Opérations impliquant des motifs


Lequel des motifs suivants correspond à l'expresion g[1, 2, 3]?


Laquelle des options suivantes choisit tous les éléments de la liste {f[1], g[2], f[5], g[3]} correspondant à g[_]?


Le résultat de l'expression {f[1], f[5], f[x]} /. f[x_] x + 4 est :

© 2020 Wolfram. Tous droits réservés.