gh-134082: modernize docstrings in `string.Formatter` (#134083) · python/cpython@b5febf7

GitHub

@@ -264,22 +264,18 @@ def _vformat(self, format_string, args, kwargs, used_args, recursion_depth,

264264265265return''.join(result), auto_arg_index

266266267-268267defget_value(self, key, args, kwargs):

269268ifisinstance(key, int):

270269returnargs[key]

271270else:

272271returnkwargs[key]

273272274-275273defcheck_unused_args(self, used_args, args, kwargs):

276274pass

277275278-279276defformat_field(self, value, format_spec):

280277returnformat(value, format_spec)

281278282-283279defconvert_field(self, value, conversion):

284280# do any conversion on the resulting object

285281ifconversionisNone:

@@ -292,34 +288,32 @@ def convert_field(self, value, conversion):

292288returnascii(value)

293289raiseValueError("Unknown conversion specifier {0!s}".format(conversion))

294290295-296-# returns an iterable that contains tuples of the form:

297-# (literal_text, field_name, format_spec, conversion)

298-# literal_text can be zero length

299-# field_name can be None, in which case there's no

300-# object to format and output

301-# if field_name is not None, it is looked up, formatted

302-# with format_spec and conversion and then used

303291defparse(self, format_string):

304-return_string.formatter_parser(format_string)

292+"""

293+ Return an iterable that contains tuples of the form

294+ (literal_text, field_name, format_spec, conversion).

305295306296307-# given a field_name, find the object it references.

308-# field_name: the field being looked up, e.g. "0.name"

309-# or "lookup[3]"

310-# used_args: a set of which args have been used

311-# args, kwargs: as passed in to vformat

297+ *field_name* can be None, in which case there's no object

298+ to format and output; otherwise, it is looked up and

299+ formatted with *format_spec* and *conversion*.

300+ """

301+return_string.formatter_parser(format_string)

302+312303defget_field(self, field_name, args, kwargs):

313-first, rest=_string.formatter_field_name_split(field_name)

304+"""Find the object referenced by a given field name.

314305306+ The field name *field_name* can be for instance "0.name"

307+ or "lookup[3]". The *args* and *kwargs* arguments are

308+ passed to get_value().

309+ """

310+first, rest=_string.formatter_field_name_split(field_name)

315311obj=self.get_value(first, args, kwargs)

316-317312# loop through the rest of the field_name, doing

318313# getattr or getitem as needed

319314foris_attr, iinrest:

320315ifis_attr:

321316obj=getattr(obj, i)

322317else:

323318obj=obj[i]

324-325319returnobj, first