J'ai récemment appris python 3 et je ne peux pas obtenir d'exemples impliquant une interpolation de chaîne (formatage) pour fonctionner.
In [1]: state = "Washington"
In [2]: state
Out[2]: 'Washington'
In [3]: my_message = f"I live in {state}"
File "<ipython-input-3-d004dd9e0255>", line 1
my_message = f"I live in {state}"
^
SyntaxError: invalid syntax
Je pensais que ma machine était par défaut à python 2, mais une vérification rapide révèle:
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
Type "copyright", "credits" or "license" for more information.
IPython 5.2.2 -- An enhanced Interactive Python.
Je suis sur Ubuntu 16.04:
python3 --version
Python 3.5.2
Suis-je en train d'oublier la syntaxe de base? J'ai exécuté les mêmes commandes sur quelques ordinateurs de camarades de classe et cela semble fonctionner très bien.
Comme suggéré par Josh Lee dans la section commentaire, ce type d'interpolation de chaînes a été ajouté dans Python 3.6 uniquement, voir Quoi de neuf dans Python 3.6 (ici cela s'appelle " PEP 498 : Littéraux de chaîne formatés").
Vous semblez cependant utiliser Python 3.5.2, qui ne prend pas en charge cette syntaxe.