Pythonの数値の操作や編集方法を、演習用プログラムのソースコードを使い、それを実行しながら解説します。
1.演習用プログラムのダウンロード
演習用プログラム( practice08.py )をダウンロードします。
ダウンロードファイルは テキストファイルになっているので、エクスプローラーを使って拡張子を .txt から .py に変更します。
practice08.py を Python をインストールしたフォルダ(今回は C:\Python)に置きます。
2.ソースコードの表示
メモ帳を使って、演習用プログラム( practice08.py )を開きます。

practice08.py
3.数値の操作
① 数値を用意する
コマンドプロンプト で practice08.py を実行します。
プログラムを実行する方法は、こちらの記事『ファイルに保存されたプログラムの実行』を参照します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice08.py" *** 数値を用意 *** *** 数値を表す文字列 *** 12345 *** 数値 *** 10000
プログラムソースを確認します。
01 # -*- coding: utf-8 -*-
02 """
03 演習プログラム8
04
05 数値の操作
06
07 """
08 import sys # モジュールのインポート
09
10 # 数値を用意する
11 print("\n*** 数値を用意 ***")
12 strNum = "12345" # 数値を表す文字列
13 print("\n*** 数値を表す文字列 ***")
14 print(strNum)
15
16 intNum = 10000 # 数値
17 print("\n*** 数値 ***")
18 print(intNum)
19
20 #終了1
21 sys.exit()
12行目、変数 strNum には数値を表す文字列 "12345" が入っています。
16行目、変数 intNum には数値 10000 が入っています。
② 桁を指定してゼロ詰めをする
ソースコード #終了1 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
*** 桁を指定してゼロ詰めをする *** *** 数値を表す文字列 ***《 str.zfill() 》 ゼロ詰めして7桁:0012345 <class 'str'> *** 数値 ***《 組み込み関数 format() 》 ゼロ詰めして7桁:0010000 <class 'str'> *** 数値 ***《 文字列メソッド format() 》 ゼロ詰めして7桁:0010000 <class 'str'>
ゼロ詰めをする方法
数値を表す文字列をゼロ詰めするときは、関数 zfill() を使います。
数値をゼロ詰めするときは、組み込み関数 format() を使う方法と、文字列メソッド format() を使う方法があります。
結果は文字列になります。
23 # 桁を指定してゼロ詰めをする
24 print("\n*** 桁を指定してゼロ詰めをする ***")
25
26 print("\n*** 数値を表す文字列 ***《 str.zfill() 》")
27 result = strNum.zfill(7) # str.zfill() を利用
28 print("ゼロ詰めして7桁:" + result)
29 print(type(result))
30
31 print("\n*** 数値 ***《 組み込み関数 format() 》")
32 result = format(intNum, '07d') # 組み込み関数 format() を利用
33 print("ゼロ詰めして7桁:" + result)
34 print(type(result))
35
36 print("\n*** 数値 ***《 文字列メソッド format() 》")
37 result = '{:0=7}'.format(intNum) # 文字列メソッド format() を利用
38 print("ゼロ詰めして7桁:" + result)
39 print(type(result))
40
41 #終了2
42 sys.exit()
27行目で、数値を表す文字列を str.zfill(n) を使ってゼロ詰めしています。引数 n は、ゼロ詰めの桁数を指定します。
32行目で、数値を 組み込み関数 format() を使ってゼロ詰めしています。
37行目で、数値を 文字列メソッド 文字列メソッド format() を使ってゼロ詰めしています。
③ 桁区切り(カンマ)を入れる
ソースコード #終了2 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
*** 桁区切り(カンマ)を入れる *** 1000000 1,000,000 <class 'str'>
桁区切り(カンマ)を入れるときは、文字列メソッド format() を使います。
44 # 桁区切り(カンマ)を入れる
45 print("\n*** 桁区切り(カンマ)を入れる ***")
46 intNum = 1000000
47 print(intNum)
48 result = '{:,}'.format(intNum) # 文字列メソッド format() を利用
49 print(result)
50 print(type(result))
51
52 #終了3
53 sys.exit()
48行目で、文字列メソッド format() を使って桁区切り(カンマ)を入れています。
④ 符号(プラス、マイナス)を入れる
ソースコード #終了3 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
*** 符号(プラス、マイナス)を入れる *** 1000 -1000 符号を入れる:+1000 符号を入れる:-1000 <class 'str'>
通常、負の値にのみ符号(マイナス -)が付き、正の値の符号(プラス +)は付きません。
正の値の符号を付けるときは、文字列メソッド format() を使います。
55 # 符号(プラス、マイナス)を入れる
56 #デフォルトでは負の値にのみ符号(マイナス-)が表示されます
57 print("\n*** 符号(プラス、マイナス)を入れる ***")
58 intWork1 = 1000
59 intWork2 = -1000
60 print(intWork1)
61 print(intWork2)
62
63 result = '{:+}'.format(intWork1) # 文字列メソッド format() を利用
64 print("符号を入れる:" + result)
65 result = '{:+}'.format(intWork2) # 文字列メソッド format() を利用
66 print("符号を入れる:" + result)
67 print(type(result))
68
69 sys.exit()
63行目、63行目で、文字列メソッド format() を使って符号(プラス、マイナス)を入れています。
<文字列の操作 | 数値の操作 | 日時の操作> |