Address
304 North Cardinal St.
Dorchester Center, MA 02124
Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM
Address
304 North Cardinal St.
Dorchester Center, MA 02124
Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM
最速でプログラミングをマスターするならTechAcademy [テックアカデミー] 【PR】がオススメです。
マイペースで学ぶなら世界最大級の動画学習サイトUdemyがオススメです。セールで安く買える講座も多数!
Pythonの文字列を扱う機能はとても強力で便利です。今回はそんな文字列操作のうち、str.formatの基本的な使い方を見ていきます。
Python公式ドキュメント:str.format(*args, **kwargs)¶
文字列.format(*args, **kwargs)
これが書き方の基本となります。
これらはそれぞれ「可変長位置引数」と「可変長キーワード引数」と言いますが、これらについては解説記事「Pythonの関数の引数にアスタリスクを使った<関数 (~,*,・・・)>の意味とは?」をご覧ください。
このstr.formatですが、文字列オブジェクトの部分に書式指定文字列を組み合わせることができます。この書式指定文字列とは何かというと、ものすごく乱暴に言えば文字列の中で、
"Hello, {name}"
このように{}で囲った置換フィールドを使い、ある情報を別の形式の情報へ変換して表示させる書き方のことです。
この書式指定文字列とstr.formatを組み合わせた使い方の例がこちらです。
print("Hello, {name}".format(name="Tom"))
これは、str.formatの引数としてキーワード引数nameを設定し、その値としてTomという文字列を代入したものです。そしてこれを実行すると下のようになります。
Hello, Tom
nameという変数がTomという情報に変更されて表示されていますね。
それでは以下、str.format()と書式指定文字列の文法とを組み合わせた基本的な使い方を見ていきましょう。
上記公式ドキュメントで紹介されているコードを使って基本的な使い方を紹介します。次のコードを見て下さい。
#01: str.formatの「0番目」の位置引数を使用
print("First, thou shalt count to {0}".format("God"))
#02: 位置引数のインデックスを何も指定しないと自動的に0番目のものが使われる
print("Bring me a {}".format("coffee"))
#03: 位置引数は何も指定しないと前から順番に使われる
print("From {} to {}".format("nine a.m.", "five p.m."))
#04: キーワード引数を指定した場合
print("My quest is {name}".format(name="Tom"))
#05: 「インスタンスオブジェクト.属性」という書き方を使った場合
class Monster_Data:
def __init__(self, name, weight):
self.name = name
self.weight = weight
monster_1 = Monster_Data("Godzilla", 60)
print("Weight in tons {0.weight}".format(monster_1))
#06: キーワード引数にリストを使った場合
print("Units destroyed: {players[0]} and {players[1]}".format(players=["Tom", "Mary"]))
ここでは#01~#06までの6パターンの使い方を紹介しました。これらを実行すると上から順番に、
First, thou shalt count to God
Bring me a coffee
From nine a.m. to five p.m.
My quest is Tom
eight in tons 60
Units destroyed: Tom and Mary
このようになります。いい感じですね!
プログラミングの学習には世界最大の動画学習サイトUdemyの動画講座がおすすめです。
大幅割引セールもよく開催されているためチェックしてみてください。