blog20100901

2013/08/20 - プログラミング言語 Perl にまつわる etc. - Perl monger
参考 : perldoc, perldoc.jp, search.cpan.org, perldoc.perl.org ...
「 初めての Perl 第 6 版 」(オライリー・ジャパン発行 ISBN978-4-87311-567-2) 」
「 続・初めての Perl 改訂版 」(オライリー・ジャパン発行 ISBN4-87311-305-9) 」
「 Effective Perl 第 2 版 」(翔泳社発行 ISBN978-4-7981-3981-4) 」 ... etc,.

Perl Perl_0

Perl 「 printf 」: 基礎的な用法 (0x3e)

Perl 「 printf 」: 基礎的な用法 (0x3e)

目次 - Perl Index



Theme



Perl について、復習を兼ねて断片的な情報を掲載して行く連載その 0x3e回。

Perl で出力フォーマットを指定出来る関数 printf の基本的な利用方法について。




printf の変換指定子



まずは、前回紹介した変換指定子の代表的なものの用法を確認します。

はじめに確認するのは「 %s 」です。

「 %s 」は文字列に対応していますので、「 LIST 」には文字列データを置きます。


printf "I know you can it, %s\n", 'Amuro';


文字列データはダブルクォーテーションで囲んでも良いです。また、クォートすることなく数値を指定しても、Perl はそれを文字列と解釈して問題なく表示します。

次に「 %d 」を確認します。

「 %d 」は符号付 10 進数に対応します。

"符号付" とは、マイナスの値を表現出来るということです。対して "符号無" はマイナスの値を表現出来ない分、プラスの値をより多く表現することが出来ます。

通常 10 進数を利用する場合は「 %d 」で問題ない様に思います。

仮に、小数点以下の数値があった場合は「 切り捨て 」られます。


printf "RX-%d\n", 78;


「 LIST 」に文字列を指定すると「 "string" isn't numeric in printf at youfile.pl line n. ( "文字列" は数値じゃない printf の )」といった具合に警告が出ます。

試しに「 use warnings 」を解除すると各文字が数値 「 0 」に置きかえられました。

「 %f 」は固定 10 進数表記の浮動小数点数です。

つまり、小数点以下の値も表示します。


printf "Divide %d by %d = %f\n", 5, 2, 5/2;


手元の環境では次の様に表示されました。

Divide 5 by 2 = 2.500000


小数点以下の桁数は任意に指定可能です。

0x3e -> 0x3f へ



次回は「 %f 」の桁数指定などを含めてさら確認していきます。


参考情報は書籍「 初めての Perl 第 6 版 」を中心に perldoc, Wikipedia および各 Web サイト。それと詳しい先輩。

目次 - Perl Index





















同じカテゴリー(Perl)の記事
 Perl mp2 翻訳 Web コンテンツ圧縮の FAQ (d228) (2023-10-11 23:49)
 Perl mp2 翻訳 既知のブラウザのバグの回避策をいくつか (d227) (2023-05-26 15:41)
 Perl mp2 翻訳 Perl と Apache でのキュートなトリック (d226) (2023-05-19 17:05)
 Perl mp2 翻訳 テンプレートシステムの選択 (d225) (2022-08-15 22:23)
 Perl mp2 翻訳 大規模 E コマースサイトの構築 (d224) (2022-06-15 20:43)
 Perl mp2 翻訳 チュートリアル (d223) (2022-06-15 20:42)

Llama
リャマ
TI-DA
てぃーだブログ
プロフィール
セラ (perlackline)
セラ (perlackline)
QRコード
QRCODE
オーナーへメッセージ

PAGE TOP ▲