Skip to content

Section idea: Elegant string formatting #859

@umbrae

Description

@umbrae

One thing that I would love to see is an opinionated guide to elegant string formatting in python. I feel like there are many ways to do it, especially with f-strings now, and when it comes to indentation, interpolation, longer method names, etc, and I can never decide in the moment on what the most elegant approach is. This is especially hairy when trying to conform to a 79 character line length.

This seems obviously up the python guide's alley. ;) Just wanted to drop the seed in case it had ever crossed y'alls mind.

Some examples I can think of:

  1. What should a long string parameter in a method call look like? (This often comes up in exceptions being raised for example.)

  2. What should a long string parameter with interpolation in an error message look like?

  3. What should a string look like in a case with deep-ish indentation? (other than: break out to a method). Same question with interpolation.

  4. f-strings or .format() or %? When/why?

  5. What should multi-line f-strings look like? Should they be avoided?

  6. When to triple quote? Docs only?

etc

I feel like there's an opportunity for really good guidance here that is outside of pep8; something everybody would run into that you all would have well-formed opinions on. :) And I haven't seen much written about it.

Thoughts?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions