Python で先行ゼロの数値を表示する

Vaibhhav Khetarpal 2023年1月30日
  1. Python で rjust() 関数を使用して先行ゼロのある数値を表示する
  2. Python で str.zfill() 関数を使用して先行ゼロのある数値を表示する
  3. Python でモジュラス (%) 演算子を使用した文字列フォーマットを使用して先行ゼロを含む数値を表示する
  4. Python で str.format() 関数で文字列フォーマットを使用して先行ゼロの数値を表示する
  5. Python で先行ゼロを含む数値を表示するには、f-strings を使用した文字列フォーマットを使用する
Python で先行ゼロの数値を表示する

先行ゼロを含む数値を格納および表示することは、数値をある記数法から別の記数法に正確に変換するのに非常に役立つため、重要な側面です。

このチュートリアルでは、Python で先行ゼロのある数値を表示するために実行できるさまざまな方法について説明します。

Python で rjust() 関数を使用して先行ゼロのある数値を表示する

rjust() 関数は、文字列の左側にパディングを追加します。簡単に言うと、パディングとは、特定の文字列の左側または右側に情報を提供しない文字を挿入することであり、最初の文字列に追加の値を追加することはありません。文字列のパディングを使用して、Python プログラムで先行ゼロを表示できます。

rjust() 関数には、widthfillchar の 2つのパラメーターが含まれています。これら 2つのうち、width パラメーターは必須であり、パディングプロセスの完了後に指定された文字列の長さを指定するために使用されます。一方、fillchar パラメータはオプションであり、文字列を埋める文字を表します。

ここに、このチュートリアルで説明されている各メソッドの先行ゼロを使用して、110 の数字を表示する必要があるサンプルプログラムがあります。必要なパディングの量は、rjust() 関数を使用して手動で指定できます。

次のコードは、rjust() 関数を使用して、Python で先行ゼロのある数値を表示します。

a = [1, 10]
for num in a:
    print(str(num).rjust(2, "0"))

上記のコードは次の出力を提供します。

01
10

Python で str.zfill() 関数を使用して先行ゼロのある数値を表示する

str.zfill(width) 関数は、数値文字列を返すために使用されます。そのゼロは、指定された width の左側に自動的に入力されます。これは、関数が取る唯一の属性です。この width パラメータに指定された値が文字列の長さよりも小さい場合、入力プロセスは発生しません。

次のコードは、str.zfill() 関数を使用して、Python で先行ゼロのある数値を表示します。

print(str(1).zfill(2))
print(str(10).zfill(2))

上記のコードは次の出力を提供します。

01
10

str.zfill() 関数は、文字列の左側にゼロを埋め込むように設計されています。この場合、これは優れた選択であり、強く推奨される方法です。

Python でモジュラス (%) 演算子を使用した文字列フォーマットを使用して先行ゼロを含む数値を表示する

モジュラス%記号は、文字列フォーマットまたは補間演算子と呼ばれることもあり、Python で文字列フォーマットを実装する数少ない方法の 1つです。文字列フォーマットを実装する方法の中で最も古いため、現在インターネットで使用できるほとんどすべてのバージョンの Python で問題なく動作します。

%記号と変換タイプを表す文字は、変数のプレースホルダーとしてマークされています。

次のコードは、モジュラス (%) 演算子を使用した文字列フォーマットを使用して、Python で先行ゼロを含む数値を表示します。

print("%02d" % (1,))
print("%02d" % (10,))

上記のコードは次の出力を提供します。

01
10

上記のコードでは、%記号の後に書かれた数字 02 は、表示され、先行ゼロに合わせて調整されるテキスト幅を設定し、d 変数は変換タイプを示します。

この方法により、先行ゼロの数値を表示する操作が簡単になります。それでも、コードの可読性に影響を与え、理解を難しくすることがあります。

Python で str.format() 関数で文字列フォーマットを使用して先行ゼロの数値を表示する

Python で文字列フォーマットを実装するさらに別の方法は、str.format() 関数を使用することです。中括弧 {} を使用して、print ステートメントで変数を置き換える必要がある場所をマークします。

str.format() 関数は Python 2.6 で導入され、それ以降にリリースされた Python 3.5 までのすべての Python バージョンで使用できます。この関数はコーダーの間で非常に人気があり、複雑な文字列のフォーマットで非常に効率的に処理されるため、プログラマーは文字列フォーマットを実装するためにこの方法をお勧めします。

次のコードは、str.format() 関数で文字列フォーマットを使用して、Python で先行ゼロのある数値を表示します。

print("{:02d}".format(1))
print("{:02d}".format(10))

上記のコードは次の出力を提供します。

01
10

上記のプログラムでは、コロン記号の後のコンテンツは幅とデータ型の変換を指定します。中括弧 {} はプレースホルダーとして機能します。

Python で先行ゼロを含む数値を表示するには、f-strings を使用した文字列フォーマットを使用する

Python 3.6 で導入されたこのメソッドは、文字列フォーマットを実装する Python の比較的新しいメソッドです。さらに、最新バージョンの Python で使用できます。

文字列フォーマットの実装は、他の 2つの以前のメソッドである%演算子と str.format() 関数よりも効率的です。これは、このメソッドがより速く、より簡単に理解できるためです。また、Python で他の 2つよりも速い速度で文字列フォーマットを実装するのにも役立ちます。

次のコードは、f-strings を使用した文字列フォーマットを使用して、Python で先行ゼロを含む数値を表示します。

print(f"{1:02d}")
print(f"{10:02d}")

上記のコードは、次の出力を提供します。

01
10

上記のプログラムでは、文字列の幅とデータ変換タイプは、プレースホルダー内のコロン記号の後に指定されています。

文字列フォーマットを使用して文字列を先行ゼロで埋める場合、専門家は他の 2つの方法よりも f-strings の使用を推奨しています。これは、より簡潔でエラーが発生しにくく、プログラムの可読性を確実に向上させます。

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

関連記事 - Python String

関連記事 - Python Number