
【Python】数字を0埋めする方法
公開: 更新:Pythonで数字や文字列を0埋めする方法は、データ整形や表示の一貫性を保つため、頻繁に使用される機能です。
数字や文字列を0埋めする方法として、以下3つが挙げられます。
- zfill()メソッド
- format()メソッドおよび関数
- %演算子
上記3つについて、簡単に解説していきます。
zfill()メソッドで数字を0埋めする方法
【サンプルコード】
x = "123"
padded_x = x.zfill(5)
print(padded_x) # 00123
x = "123"
は文字列として、数字"123"を変数xに代入しています。
padded_x = x.zfill(5)
はzfill()メソッドを使用して、文字列xを5桁の0埋めした結果をpadded_xに代入しています。
print(padded_x)
では、0埋めされた結果"00123"を出力しています。
【PR】プログラミングや生成AIを無料で学べる「コードキャンプフリー」
zfill()メソッドのメリット・デメリット
zfill()メソッドは主に、数字の文字列を指定された長さにゼロで埋めるため使用されます。
実装は簡単ですが、zfill()はゼロ埋めの機能しか提供されていません。
さらに、このメソッドは数字の文字列に特化しているため、他のデータ型や文字列への適用が難しいです。
format()メソッドおよび関数で数字を0埋めする方法
【サンプルコード】
num = 123
formatted_num = format(num, '05d')
print(formatted_num) # 00123
num = 123
は、整数123を変数numに代入しています。
formatted_num = format(num, '05d')
は、format()関数を使用して、整数numの0埋めした結果をformatted_numに代入しています。
print(formatted_num)
では、0埋めされた結果"00123"を出力しています。
【PR】『Python』を学べる企業・個人向けのプログラミングコース
format()メソッドおよび関数のメリット・デメリット
format()メソッドおよび関数は、文字列や数字、日付など様々なデータ型の書式設定に対応できます。
シングルの文字列内に複数の変数や値を組み込める上に、書式指定が明確であるため理解しやすいメリットがあります。
しかし、書式指定のシンタックスを習得する必要があり、学習曲線は少し急かもしれません。
また、Pythonのバージョンによって、動作が異なる場合があるので、注意が必要です。
%演算子で数字を0埋めする方法
【サンプルコード】
num2 = 123
padded_num2 = '%05d' % num2
print(padded_num2) # 00123
num2 = 123
は、整数123を変数num2に代入しています。
padded_num2 = '%05d' % num2
は、%演算子を使用して、整数num2の0埋めした結果をpadded_num2に代入しています。
print(padded_num2)
では、0埋めされた結果"00123"を出力しています。
%演算子のメリット・デメリット
%演算子は古いバージョンで使用されていた方法であり、短いコードで単純なフォーマットを実現できます。
現代のPythonプログラミングにおいて、format()メソッドの登場以降、%演算子はあまり推奨されていません。
その理由として、format()に比べて書式のオプションが限られており、フォーマット文字列と引数の数やタイプが一致しない場合、エラーが発生しやすいという点が挙げられます。
古いバージョンを修正する場合、%演算子も理解しておいたほうが良いので、バージョンなどケースバイケースで0埋めする方法を理解しておくことをおすすめします。
※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。
ITやプログラミングに関するコラム
- 【Python】仮想環境から抜ける方法
- 【Python】文字列から改行コードを除去する方法
- 【Python】10回の繰り返し処理を実装する方法
- 【Python】df(DataFrame)とは?基本的な使い方やデータ操作について解説
- 【Python】指定のファイルがあれば削除する方法
ITやプログラミングに関するニュース
- Azure SQL Managed InstanceがVector型Public Preview対応開始、AI駆動アプリケーション開発の効率化を実現
- GoogleがGmailアプリにGeminiサマリーカードを導入、メール要約の自動表示機能が利用可能に
- ZenchordとNottaが共同開発したAIイヤホンZenchord 1をMakuakeで先行公開、音声認識から議事録作成まで自動化
- Ideinが音声解析AIサービス「Phonoscape」の提供を開始、対面接客現場での会話データ活用が可能に
- Microsoftが.NET 10 Preview 4でdotnet run app.cs機能をリリース、プロジェクトファイル不要でC#実行が可能に