Rust-эквивалент Python строкового метода ljust () - PullRequest
4 голосов
/ 18 апреля 2020

Мне нужно выровнять по левому краю &str в Rust.

В Python, я бы сделал:

f"{spam}: {eggs}".ljust(curses.COLS - 1)

Как я могу сделать это идиоматически в Rust?

1 Ответ

6 голосов
/ 18 апреля 2020

Макросы форматирования, такие как println!, write! и format!, предлагают эту функцию. Посмотрите на https://doc.rust-lang.org/std/fmt/#fillalignment и https://doc.rust-lang.org/std/fmt/#width.

  • {:5} определяет минимальную ширину 5
  • {:-<5} выравнивает по левому краю до пяти цифр и заполняет -
  • {1:0$}: «Значение ширины также можно указать в виде размера в списке параметров, добавив постфикс $, указывающий, что Второй аргумент - это значение, определяющее ширину. "
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...