f-string est une méthode de description simple pour la fonction format.
Une fois que vous vous souvenez de la forme, la description de base est la même que la fonction de formatage.
table des matières
Il est disponible depuis python3.6 (publié en décembre 2016).
Sur la page officielle, il s'appelle "Formatted String Literal".
Cliquez ici pour plus de détails (http://docs.python.org/ja/3.6/reference/lexical_analysis.html#f-strings)
-La description est plus simple avec f-string. -La fonction de format a un degré de liberté légèrement supérieur. └ (On peut dire que de nombreux modèles sont compliqués)
・ Code simple ・ Tout spécifier avec des variables ・ Décrire les variables et les formats comme un ensemble └ Facile à comprendre quel format est donné à quelle variable
-Une valeur numérique ou une chaîne de caractères peut être directement spécifiée pour la valeur à affecter. ・ Vous pouvez laisser vide dans {}. (Le numéro d'index est attribué automatiquement) ・ Peut être spécifié par numéro d'index
Identique à la fonction de format, sauf en utilisant "f ''". ":" Motif avec le formatage suivant omis
La méthode de réglage du format est la même que la fonction de format. Cliquez ici pour plus de détails (https://qiita.com/yuta-38/items/9a93eea10ccc7ac2c8ad)
"" Je m'appelle AAA. Je mesure 111 cm. Mon plat préféré est BBB ""
■f-string
f-string
a='AAA'
b=111
c='BBB'
f'mon nom est{a}est. Quelle est votre taille{b}cm. Quel est votre plat préféré{c}'
#production
# 'Mon nom est AAA. La hauteur est de 111 cm. Ma nourriture préférée est BBB'
** Fonction de formatage ▼ ① **
.format('AAA', 111, 'BBB')
fonction de formatage ①
'mon nom est{}est. Quelle est votre taille{}cm. Quel est votre plat préféré{}'.format('AAA', 111, 'BBB')
#production
# 'Mon nom est AAA. La hauteur est de 111 cm. Ma nourriture préférée est BBB'
Il est appliqué dans {} dans l'ordre décrit dans () de format.
Une erreur se produit si le nombre de {} est supérieur au nombre d'éléments spécifié dans format.
fonction de formatage ②
a='AAA'
b=111
c='BBB'
'mon nom est{}est. Quelle est votre taille{}cm. Quel est votre plat préféré{}'.format(a, b, c)
#production
# 'Mon nom est AAA. La hauteur est de 111 cm. Ma nourriture préférée est BBB'
fonction de format ③ spécification numérique
a='AAA'
b=111
c='BBB'
'mon nom est{2}est. Quelle est votre taille{1}cm. Quel est votre plat préféré{0}'.format(c, b, a)
#production
# 'Mon nom est AAA. La hauteur est de 111 cm. Ma nourriture préférée est BBB'
fonction de format ③ spécification numérique
'mon nom est{name}est. Quelle est votre taille{height}cm. Quel est votre plat préféré{favorit}'.format(height='111', favorit='BBB', name='AAA')
#production
# 'Mon nom est AAA. La hauteur est de 111 cm. Ma nourriture préférée est BBB'
Il existe de nombreux modèles qui peuvent être spécifiés par la fonction de formatage, mais il est délicat de savoir si tous sont nécessaires lors de son utilisation réelle.
Il semble qu'une f-string puisse le gérer.
Le formatage est identique à la fonction de formatage. (Fonction de formatage)
f'{a:^n}
└ Formatage après ":"
└ "^" centre justifié ("<" justifié à gauche, ">" justifié à droite)
└ "n" entier. Indiquez l'écart par le nombre de morsures
Justifié à droite
a= 'AAA'
f'mon nom est{a:^9}est'
#production
# 'Mon nom est AAA'
** ▼ Remplir avec 0 (0 remplissage) **
f'{a:0>n}
└ Préfixez le symbole de spécification de placement d'élément (ici, ">") avec 0
0 remplissage
a= 'AAA'
f'mon nom est{a:0>9}est'
#production
# 'Mon nom est 000000 AAA'
** ▼ Remplissez tous les caractères **
f'{a:Z>n}
└ Insérez le caractère que vous souhaitez remplir avant le symbole de spécification de placement d'élément (ici, ">")
└ Les symboles, lettres et chiffres sont OK
└ Un seul caractère.
Remplir de caractères arbitraires
a= 'AAA'
f'mon nom est{a:e>9}est'
#production
# 'Mon nom est ouais ouais ouais AAA'
f '{A:% Y année% # m mois% # d jour}'
└ Variable «A» contenant des données de date
└ Décrivez le format de la date ci-dessous ":"
└ "% Y" 4 chiffres
└ Mois sans "% # m" 0 ("% -m" pour Mac)
└ "% # d" mois sans 0 ("% -d" pour Mac)
Pour les types de spécificateurs (% Y,% m, etc.) [ici](https://qiita.com/yuta-38/items/ba6dce967ede22e37c60#%E6%97%A5%E4%BB%98%E3% 81% AE% E6% 8C% 87% E5% AE% 9A% E5% AD% 90% E4% B8% 80% E8% A6% A7)
Format de la date
import datetime as dt
past = dt.date(2017,1,3) #datetime.date(2017, 1, 3)
f'{past:%Y année%#m mois%#jour j}'
#production
# f'{past:%Y année%#m mois%#jour j}'
Puisque les variables et les formats sont définis comme {variable: format}, il est facile de comprendre quel format est défini pour quoi.
Dans la fonction format, la visibilité est réduite car elle est spécifiée par le numéro d'index.
Formater la date avec la fonction de format
import datetime as dt
past = dt.date(2017,1,3)
now = dt.date(2020,1,28)
future = dt.date(2022,1,30)
"Dans les vieux jours{0:%Y année%#m mois%#jour j}.. maintenant{1:%Y/%#m/%#d}.. L'avenir est{2:%y%m%d}。".format(past, now, future)
[Cliquez ici pour plus de détails](https://qiita.com/yuta-38/items/9a93eea10ccc7ac2c8ad#format%E9%96%A2%E6%95%B0%E3%81%A7%E3%81%A7%E3% 81% 8D% E3% 82% 8B% E3% 81% 93% E3% 81% A8)
Recommended Posts