「Python3エンジニア認定 [基礎試験]」 合格を目指します。
使用教材:
・Pythonチュートリアル第4版 --オライリー・ジャパン--
・徹底攻略Python3エンジニア認定基礎試験 問題集 --impress--
ひとまず、Pythonチュートリアル第4版を一通り読みました。
その上で早速徹底攻略Python3エンジニア認定基礎試験 問題集を解いていきます。
第1章は、Pythonの特徴についての問題のようです。
結果は 9問中9問正解!!
第2章は、テキストと数の操作についての問題です。
結果は、9問中5問正解。
間違えた4問について確認していきます。
見直し
【文字列のスライス位置[負数での指定]】
負数で指定する文字列のスライスは、以下のように数えます。
| a | b | c | d | e | f | g |
-7 -6 -5 -4 -3 -2 -1
【フォーマット済み文字列(f文字列)】
文字列の中に式の値を入れられます。
式の後にフォーマット指定子のオプションを追加することで、
式の値に様々な書式を設定できます。
f"文字列{値:フォーマット指定子}"
【フォーマット指定子】
主なフォーマット指定子は以下です。
フォーマット指定子 | 意味 |
---|---|
b | 値を2進数で出力する |
d | 値を10進数で出力する |
x | 値を16進数で出力する |
f | 値を与えられた精度までの少数で出力する (例:.5fで少数第5位で丸める) |
% | 値を100倍し、パーセント記号が付いた形式で出力する |
【format()メソッド】
文字列の詳細なフォーマットを行うメソッドです。
#①フォーマットフィールドに引数のインデックスを記述する
"spam: {0}, ham: {1}, egg: {2}".format(x, y, z)
#②空のフォーマットフィールドを使う
"spam: {}, ham: {}, egg: {}".format(x, y, z)
#③フォーマットフィールドにキーワード引数の名前を記述する
"spam: {a}, ham: {b}, egg: {c}".format(a=x, b=y, c=z)
ただし、フォーマットフィールドには、format()メソッドに与えた引数の変数名は直接記述できないです。
以下の記述ではKeyErrorが発生します!!
#KeyErrorになる記述例
"spam: {x}, ham: {y}, egg: {z}".format(x, y, z)
また、応用として以下のようにフォーマット指定子と組み合わせることもできる。
#整数3桁のゼロ埋めにする
"spam: {:03d}, ham: {:03d}, egg: {:03d}".format(1, 2, 3)
【出力結果】
spam: 001, ham: 002, egg: 003