这是有关“新”格式语法的文档。一个例子是:
"({:d} goals, ${:d})".format(self.goals, self.penalties)
如果
goals和
penalties均为整数(即默认格式为ok),则可以将其缩短为:
"({} goals, ${})".format(self.goals, self.penalties)
并且由于参数是的字段
self,所以还有一种使用单个参数两次的方法(如@Burhan Khalid在评论中指出的那样):
"({0.goals} goals, ${0.penalties})".format(self)
说明:
{}
表示仅下一个位置参数,采用默认格式;{0}
表示带有index的参数0
,默认格式;{:d}
是下一个位置参数,采用十进制整数格式;{0:d}
是带有index的参数0
,十进制整数格式。
选择参数时,您可以执行许多其他 *** 作(使用命名参数而不是位置参数,访问字段等),还有许多格式选项(填充数字,使用千位分隔符,是否显示符号等)。其他一些例子:
"({goals} goals, ${penalties})".format(goals=2, penalties=4)"({goals} goals, ${penalties})".format(**self.__dict__)"first goal: {0.goal_list[0]}".format(self)"second goal: {.goal_list[1]}".format(self)"conversion rate: {:.2f}".format(self.goals / self.shots) # '0.20'"conversion rate: {:.2%}".format(self.goals / self.shots) # '20.45%'"conversion rate: {:.0%}".format(self.goals / self.shots) # '20%'"self: {!s}".format(self) # 'Player: Bob'"self: {!r}".format(self) # '<__main__.Player instance at 0x00BF7260>'"games: {:>3}".format(player1.games) # 'games: 123'"games: {:>3}".format(player2.games) # 'games: 4'"games: {:0>3}".format(player2.games) # 'games: 004'
注意: 正如其他人指出的那样,新格式并不能取代前一种格式,这两种格式都可以在Python 3和更高版本的Python
2中使用。有人可能会说这是优先考虑的问题,但是恕我直言,较新的版本比旧的版本更具表现力,并且在编写新代码时应使用(当然,除非它针对较旧的环境)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)