7章 Pythonの高度な機能Advanced Python

この章では、さらに高度なPython言語の概念をいくつか紹介する。具体的には、ファイルの読み書き、例外の取り扱い、モジュールの利用、そして基本的なインターネットプログラミングなどだ。

すでにクラスやメソッドなどオブジェクト指向のさまざまな機能には触れてきたが、この章ではさらに詳しくオブジェクト指向について説明する。

レシピ7.1:数値の書式を指定する

課題 数値を、特定の桁数で表示したい。

解決 数値にformat文字列を適用する。以下に例を示す。

>>> x = 1.2345678
>>> "x={:.2f}".format(x)
'x=1.23'
>>>

 formatメソッドは文字列を返す。ここではPythonを対話モードで実行しているため、ターミナルウィンドウにその結果が表示されている。しかしformatをプログラムの中で使う際には、以下のようにprint文の中で使うのが普通だ。

x = 1.2345678
print("x={:.2f}".format(x))

解説 書式指定文字列には、{}で区切られたマーカーと、通常のテキストが含まれる。format関数へ渡された引数(どれだけたくさんあってもよい)は、書式指定子に従ってマーカーと置き換えられる。

 上記の例では書式指定子は:.2fであり、これは数値が浮動小数点数fであって小数点以下2桁で表示されることを示している。

 数値を常に7桁(パディングのスペースを含めて)になるように書式指定したい場合には、次のように小数点の前にもう1つ数値を指定すればよい。

>>> "x={:7.2f}".format(x) 'x= ...

Get Raspberry Piクックブック 第4版 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.