Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python:パッドゼロ

一部の数値は、ゼロまたは複数のゼロで始まる必要があります。たとえば、ユーザーIDが特定の数の下にある場合、すべてのID番号が同じ長さになるように、ユーザーIDの先頭に特定の数のゼロが必要になる場合があります。

zfill()関数を使用して、文字列にゼロを埋め込むことができます。文字列フォーマットを使用して、数値にゼロを埋め込むことができます。このガイドでは、文字列と整数にゼロを埋め込む方法の例について説明します。

Python:ゼロを文字列にパッドする

ラッフルのチケット番号が当選者であるかどうかを確認するプログラムを作成します。各ラッフルチケット番号には、次のような3つの番号が含まれています。

022

私たちのプログラムは、ユーザーに番号を挿入するように求めます。ユーザーが挿入する数字が100未満の場合、数字の先頭にゼロが追加されます。これにより、プログラムはユーザーが挿入した番号を当選チケット番号と比較できるようになります。

入賞チケット番号のリストを定義することから始めます:

winners = ["033", "087", "183", "173", "012"]

各チケット番号は文字列としてフォーマットされます。次に、input()メソッドを使用して数値を挿入するようにユーザーに依頼します。

to_check = input("Insert a number that you want to check: ")

ユーザーが挿入する番号は、勝者のリストで見つけようとする番号です。この値は文字列としてフォーマットされます。

ユーザーは、3文字の長さの数字を挿入することはできません。ユーザーがプログラムに挿入するラッフル番号が正しくフォーマットされていることを確認するには、zfill()を使用します。 方法。このメソッドは、数値の先頭にゼロを追加します。

参加者の81%は、ブートキャンプに参加した後、自分たちの技術的な仕事の見通しについてより自信を持っていると述べました。今日のブートキャンプにマッチしましょう。

平均的なブートキャンプの卒業生は、ブートキャンプの開始から最初の仕事を見つけるまで、キャリアの移行に6か月も費やしませんでした。

ラッフルのチケット番号は3文字の長さであるため、zfill()メソッドのパラメーターとして値3を使用します。

to_check = to_check.zfill(3)

このメソッドは、「to_check」の値が正しくフォーマットされていることを確認します。値3は、「to_check」に含める必要のある数値の数を反映しています。値にいくつのゼロを埋め込む必要があるかは反映されません。

次に、「in」演算子を指定した「if」ステートメントを使用して、「to_check」の値が当選したラッフルチケット番号のリストに表示されるかどうかを確認します。

if to_check in winners:
 	    print("Ticket #{} is a winner.".format(to_check))
else:
	    print("Ticket #{} is not a winner.".format(to_check))
>

チケットが当選番号に対応している場合、if ステートメントが実行されます。それ以外の場合、else ステートメントが実行されます。コードを実行して、何が起こるかを確認します。

Insert a number that you want to check: 33
Ticket #033 is a winner.

私たちのコードは、チケット#033が勝者であることを正常に識別しました。プログラムに挿入した番号が当選チケットに対応していない場合はどうなるかを確認してください。

Insert a number that you want to check: 182
Ticket #182 is not a winner.

プログラムは、チケットが勝者ではないことを通知します。

Python:ゼロを数値にパッドする

注:以下の例は、Python2.7以降のバージョンのPythonでのみ機能します。

最初の例では、文字列として格納された値にゼロを埋め込みました。ゼロを数値に埋めたい場合は、別の方法を使用できます。

従業員IDコードのリストを生成しているとします。これらは、ビジネスで働く各従業員を識別するために使用されます。各ID番号は、3つの番号で始まり、従業員の名前で終わる必要があります。

まず、従業員IDの先頭に表示される番号を挿入するようにユーザーに依頼します。また、従業員の名前をユーザーに尋ねます。

id_numbers = int(input("Enter the ID number of the employee: "))
surname = input("Enter the surname of the employee: ")

次に、これらの値を文字列にフォーマットします。これを行うには、.format()メソッドを使用します。

print("The employee identifier for {} is {:03d}{}.".format(surname, id_numbers, surname))

中括弧は、文字列で置換される値を表します。

中括弧の最初のセットは、従業員の名前に置き換えられます。中括弧の2番目のセットは、「id_numbers」の値に置き換えられます。ユーザーが挿入する数値が3桁未満の場合、この値にゼロが追加されます。

中括弧の最後のセットは、従業員IDの最後の部分である名前を表します。プログラムを実行してみましょう:

Enter the ID number of the employee: 823
Enter the surname of the employee: SMITH
The employee identifier for SMITH is 823SMITH.

私たちのプログラムは機能します。この場合、3桁の長さのID番号を挿入しました。 2桁しかないID番号を挿入しようとするとどうなるか見てみましょう。

Enter the ID number of the employee: 78
Enter the surname of the employee: JONES
The employee identifier for JONES is 078JONES.

私たちのプログラムは、まだ説明されている形式で識別子を生成します。各識別子には、3つの数字と、それに続く従業員の名前が含まれています。

結論

zfill()を使用できます Python文字列の前にゼロを埋め込むメソッド。 .format()を使用できます ゼロを整数値にパディングするメソッド。

これで、エキスパートコーダーのようにPythonの値の先頭にゼロを追加する準備が整いました!


  1. Pythonの回文数

    整数があるとします。整数が回文であるかどうかを確認する必要があります。つまり、整数は順方向または逆方向の両方で同じであり、その数は回文です。たとえば、番号が454であるとすると、逆にすると再び454になります。これが回文です。ここで、数値が-565の場合、その逆は565-になります。これは同じではないため、これは回文ではありません。 これを解決するために、数値を文字列として変換してから、文字列を逆にします。文字列と逆文字列が同じ場合、番号は回文です。したがって、その場合はtrueを返し、それ以外の場合はfalseを返します。 理解を深めるために実装を見てみましょう 例 class Solu

  2. Pythonのfactorial()

    数値の階乗を見つけることは、Pythonを含むデータ分析やその他の数学的分析で頻繁に必要とされます。階乗は、1から指定された数までのすべての整数を乗算することにより、常に正の整数に対して検出されます。以下に示すように、これを見つけるには3つのアプローチがあります。 Forループの使用 forループを使用して、指定された数まで1番を繰り返し、各ステップで乗算を続けることができます。以下のプログラムでは、ループで使用する前に、数値を入力して入力を整数に変換するようにユーザーに求めています。このようにして、計算で正の整数を確実に取得します。 例 n = input("Enter a nu