python_str_10文字以下の文字列を_10文字になるように空白を追加する_rjust_01


if len(scanned_code) <= 12:

# 13桁にゼロ埋め

   scanned_code = f"{int(scanned_code):013d}"  


pythonにおいて桁数が12以下のintに対して

13桁の数値の文字列に変換したいときは


上記のような記述になるそうですが、


これに似たような処理で

10文字以下のstrを格納した文字列を

かならず10文字になるように文字列のひだりに

" "、空白の文字を複数個追加するような

コードはfを使った場合、どのようなものになるのでしょうか?




`f` を使って、

10文字以下の文字列を左側に空白を追加して 10 文字にするには、

`str.rjust()` の代わりに 

`f` 文字列の `:>10` を使うと便利です。


### コード例:


```python


scanned_code = "abc"  # 例: 3文字の文字列


# f文字列を使って10文字になるように左側に空白を追加

formatted_code = f"{scanned_code:>10}"


# 空白が追加されて10文字になっていることを確認

print(repr(formatted_code))  


```


### 実行結果:


```

'       abc'

```


#### 解説:


- `:>10` の部分で、**右寄せ** (`>`)、

幅10 (`10`) にフォーマット。


- `scanned_code` の長さが 10 より短い場合、

**自動的に左側に空白が追加** される。


- `scanned_code` の長さが 10 以上なら、そのまま出力。


この方法は `rjust(10)` と同じ動作をしますが、`f` 

文字列で直感的に書ける点がメリットです。


コメント