当前位置:网站首页>Le tutoriel F - String le plus facile à comprendre de l'histoire.
Le tutoriel F - String le plus facile à comprendre de l'histoire.
2022-07-02 12:00:00 【Raelum】
Table des matières
Un.、Préface
Suite %
、format
Après formatage,Python 3.6 On a commencé à introduire un format de chaîne plus efficace:f-string.
f-string Sous forme de f
Chaîne dirigée par le modificateur(f''
),Dans la chaîne {}
Indique le champ à remplacer.f-string N'est pas essentiellement une constante de chaîne,C'est plutôt une expression qui évalue au moment de l'exécution.
2.、Fonctionnement de base
f-string Dans {}
Indique le champ à remplacer,Voici un exemple:
""" Comparaison de trois modes de formatage des chaînes """
name = 'raelum'
print('%s' % name)
# raelum
print('{}'.format(name))
# raelum
print(f'{
name}')
# raelum
Comme je l'ai dit,{}
MoyenneEn fait, c'est la valeur de l'expression,Ça veut dire qu'on peut {}
Faire des calculs:
name = 'raelum'
print(f'{
name.upper()}')
# RAELUM
print(f'{
name + name.capitalize()}')
# raelumRaelum
print(f'{
name[:-1]}')
# raelu
""" D'autres exemples Un."""
print(f'{
2 * 3 + 5}')
# 11
print(f'{
sum([i for i in range(10)])}')
# 45
print(f'{
[i ** 2 for i in range(3)]}')
# [0, 1, 4]
""" D'autres exemples 2."""
name = 'Li Hua'
num = 13
print(f'My name is {
name}.')
# My name is Li Hua.
print(f'I have {
num} apples.')
# I have 13 apples.
Trois、Spécification des guillemets
f-string Moyenne {}
Les guillemets utilisés à l'intérieur ne peuvent pas correspondre à {}
Conflit de délimiteurs de guillemets à l'extérieur , C'est - à - dire que l'opération suivante n'est pas possible :
print(f'My name is {'Li Hua'}')
# SyntaxError: f-string: expecting '}'
Remplacer par l'une des formes suivantes pour une sortie normale ( Toutes les situations possibles sont énumérées ci - dessous ):
""" Les délimiteurs externes sont des guillemets simples """
print(f'My name is {
"Li Hua"}')
print(f'My name is {
"""Li Hua"""}')
""" Les délimiteurs externes sont des guillemets doubles """
print(f"My name is {
'Li Hua'}")
print(f"My name is {
'''Li Hua'''}")
""" Le délimiteur extérieur est double trois guillemets """
print(f"""My name is {
'Li Hua'}""")
print(f"""My name is {
"Li Hua"}""")
print(f"""My name is {
'''Li Hua'''}""")
""" Le délimiteur externe est un simple trois guillemets """
print(f'''My name is {
'Li Hua'}''')
print(f'''My name is {
"Li Hua"}''')
print(f'''My name is {
"""Li Hua"""}''')
Résumé: Si plusieurs guillemets peuvent apparaître à l'intérieur de la chaîne, mais que vous ne voulez pas vous soucier du problème des guillemets , Délimiteur externe utilisé directement """
C'est tout..
Quatre、Problème d'évasion
f-string Ça ne peut pas être {}
Utilisation interne de l'évasion ,Mais c'est possible {}
Pour s'échapper ,Comme suit:
print(f"{
'\''}")
# SyntaxError: f-string expression part cannot include a backslash
print(f"\'")
# '
Si vous avez vraiment besoin de {}
Utiliser l'évasion, Doit contenir \
Le contenu de est déclaré séparément comme une variable
s = '\''
print(f"{
s}")
# '
Cinq、Aligner
f-string De {}
Adopté par content:format
Pour formater une chaîne , Pour utiliser le format par défaut , Il n'est pas nécessaire de spécifier :format
.
5.1 Remplissage des espaces par défaut
name = 'raelum'
print(f'{
name:>20}') # Aligner à droite, Longueur de la chaîne de remplissage à 20
# raelum
print(f'{
name:<20}') # Aligner à gauche, Longueur de la chaîne de remplissage à 20
# raelum
print(f'{
name:^20}') # Centrage, Longueur de la chaîne de remplissage à 20
# raelum
5.2 Remplir avec d'autres caractères
name = 'raelum'
print(f'{
name:a>20}')
# aaaaaaaaaaaaaaraelum
print(f'{
name:1<20}')
# raelum11111111111111
print(f'{
name:-^20}')
# -------raelum-------
Six、Largeur et précision
Descripteur de format | Action |
---|---|
width | Entier width Spécifier la largeur |
0width | Entier width Spécifier la largeur,0 Pour les positions élevées 0 Largeur du complément |
width.precision | Entier width Spécifier la largeur,precision Précision spécifiée |
Quand precision
Heure,width
Peut être omis.
import numpy as np
""" Exemple 1 """
a = 123456
print(f'{
a:4}')
# 123456
print(f'{
a:8}')
# 123456
print(f'{
a:08}')
# 00123456
""" Exemple 2 """
b = np.pi
print(f'{
b:.3f}')
# 3.142
print(f'{
b:8.3f}')
# 3.142
print(f'{
b:08.3f}')
# 0003.142
Enfin
Cet article ne présente que f-string Certaines des opérations les plus courantes dans ,Pour en savoir plus,Disponible pourDocuments officielsÉtudes complémentaires.
边栏推荐
- Deep understanding of NN in pytorch Embedding
- C#基于当前时间,获取唯一识别号(ID)的方法
- PYQT5+openCV项目实战:微循环仪图片、视频记录和人工对比软件(附源码)
- 小程序链接生成
- 浅谈sklearn中的数据预处理
- Research on and off the Oracle chain
- HOW TO CREATE AN INTERACTIVE CORRELATION MATRIX HEATMAP IN R
- Take you ten days to easily finish the finale of go micro services (distributed transactions)
- 可昇級合約的原理-DelegateCall
- HOW TO CREATE AN INTERACTIVE CORRELATION MATRIX HEATMAP IN R
猜你喜欢
Depth filter of SvO2 series
Data analysis - Matplotlib sample code
GGPLOT: HOW TO DISPLAY THE LAST VALUE OF EACH LINE AS LABEL
HOW TO ADD P-VALUES ONTO A GROUPED GGPLOT USING THE GGPUBR R PACKAGE
Flesh-dect (media 2021) -- a viewpoint of material decomposition
H5, add a mask layer to the page, which is similar to clicking the upper right corner to open it in the browser
Tiktok overseas tiktok: finalizing the final data security agreement with Biden government
数据分析 - matplotlib示例代码
SVO2系列之深度滤波DepthFilter
How to Create a Nice Box and Whisker Plot in R
随机推荐
基于 Openzeppelin 的可升级合约解决方案的注意事项
Power Spectral Density Estimates Using FFT---MATLAB
Cmake cross compilation
基于Hardhat和Openzeppelin开发可升级合约(二)
Pyqt5+opencv project practice: microcirculator pictures, video recording and manual comparison software (with source code)
Easyexcel and Lombok annotations and commonly used swagger annotations
Data analysis - Matplotlib sample code
Natural language processing series (II) -- building character level language model using RNN
Implementation of address book (file version)
Larvel modify table fields
H5, add a mask layer to the page, which is similar to clicking the upper right corner to open it in the browser
Summary of flutter problems
R HISTOGRAM EXAMPLE QUICK REFERENCE
深入理解PyTorch中的nn.Embedding
What week is a date obtained by QT
to_bytes与from_bytes简单示例
[multithreading] the main thread waits for the sub thread to finish executing, and records the way to execute and obtain the execution result (with annotated code and no pit)
XSS labs master shooting range environment construction and 1-6 problem solving ideas
GGPUBR: HOW TO ADD ADJUSTED P-VALUES TO A MULTI-PANEL GGPLOT
BEAUTIFUL GGPLOT VENN DIAGRAM WITH R