数値の操作 – 【Pythonプログラミング1 ~基礎編~】

PROGRAMMING

Pythonの数値の操作や編集方法を、演習用プログラムのソースコードを使い、それを実行しながら解説します。

1.演習用プログラムのダウンロード

演習用プログラム( practice08.py )をダウンロードします。
ダウンロードファイルは テキストファイルになっているので、エクスプローラーを使って拡張子を .txt から .py に変更します。
practice08.py を Python をインストールしたフォルダ(今回は C:\Python)に置きます。


2.ソースコードの表示

メモ帳を使って、演習用プログラム( practice08.py )を開きます。

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() を使って符号(プラス、マイナス)を入れています。
 

<文字列の操作 数値の操作 日時の操作>
タイトルとURLをコピーしました