位置格式化

Python 中的正则表达式

Maria Eugenia Inzaugarat

Data scientist

什么是字符串格式化?

  • 字符串插值

  • 在预定义文本中插入自定义字符串或变量:

custom_string = "String formatting"
print(f"{custom_string} is a powerful technique")
String formatting is a powerful technique
  • 用途:
    • 图表标题
    • 显示消息或错误
    • 向函数传递语句
Python 中的正则表达式

格式化方法

  • 位置格式化
  • 格式化字符串字面值
  • 模板方法
Python 中的正则表达式

位置格式化

  • 用值替换占位符

  • str.format()

 

print("Machine learning provides {} the ability to learn {}".format("systems", "automatically"))
Machine learning provides systems the ability to learn automatically
Python 中的正则表达式

位置格式化

  • 对初始字符串和传入方法的值都使用变量
my_string = "{} rely on {} datasets"
method = "Supervised algorithms"
condition = "labeled"
print(my_string.format(method, condition))
Supervised algorithms rely on labeled datasets
Python 中的正则表达式

重排值

  • 在占位符中加入索引号以重新排序值
print("{} has a friend called {} and a sister called {}".format("Betty", "Linda", "Daisy"))
Betty has a friend called Linda and a sister called Daisy

 

print("{2} has a friend called {0} and a sister called {1}".format("Betty", "Linda", "Daisy"))
Daisy has a friend called Betty and a sister called Linda
Python 中的正则表达式

命名占位符

  • 为占位符指定名称
tool="Unsupervised algorithms"
goal="patterns"
print("{title} try to find {aim} in the dataset".format(title=tool, aim=goal))
Unsupervised algorithms try to find patterns in the dataset
Python 中的正则表达式

命名占位符

my_methods = {"tool": "Unsupervised algorithms", "goal": "patterns"}
print('{data[tool]} try to find {data[goal]} in the dataset'.format(data=my_methods))
Unsupervised algorithms try to find patterns in the dataset
Python 中的正则表达式

格式说明符

  • 指定数据类型:{index:specifier}
print("Only {0:f}% of the {1} produced worldwide is {2}!".format(0.5155675, "data", "analyzed"))
Only 0.515568% of the data produced worldwide is analyzed!

 

print("Only {0:.2f}% of the {1} produced worldwide is {2}!".format(0.5155675, "data", "analyzed"))
Only 0.52% of the data produced worldwide is analyzed!
Python 中的正则表达式

格式化日期时间

 

from datetime import datetime
print(datetime.now())
datetime.datetime(2019, 4, 11, 20, 19, 22, 58582)

 

print("Today's date is {:%Y-%m-%d %H:%M}".format(datetime.now()))
Today's date is 2019-04-11 20:20
Python 中的正则表达式

Vamos praticar!

Python 中的正则表达式

Preparing Video For Download...