printの表現方法
Pythonをがんばって勉強中の私です。本当はGoogle App Engineで何か作ろうと思ったんですが、Pythonがあまりにも面白いんで、GAEのほうは手がつきません。一応、オンラインマニュアルは読んだかな〜
>>> print("%s" % "This is it!") This is it! >>> print("%s: %d" % ("Age", 20)) Age: 20 >>> print("%10s -- %03d" % ("Good", 89)) Good -- 089
まあ〜この辺は通常の使い方だよね。他の言語でも同じようなものだ。
>>> params = {"os":"Linux", "web":"Apache", "db":"MySQL", "lang":"Python"} >>> print("%(web)s" % params) Apache >>> print("%(os)s -- %(web)s -- %(db)s -- %(lang)s" % params) Linux -- Apache -- MySQL -- Python
これって物凄く便利だと思う。少し感動。それだけなんだけどね。
あと、「locals()」と「globals()」も便利ですよね。
>>> def foo(arg): ... x = 1 ... y = 2 ... z = 3 ... return locals() ... >>> foo(4) {'y': 2, 'x': 1, 'z': 3, 'arg': 4}
定義されたローカル変数の全てを表しているってのが「locals()」、便利ですよね。
>>> def bar(arg): ... text = "Hello, Python" ... num = 99 ... print("%(num)d : %(text)s -- %(arg)s" % locals()) ... >>> bar("Good") 99 : Hello, Python -- Good
本当に便利だと思います。感動です。
>>> globals() {'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__', 'foo ': <function foo at 0x00AF6B30>, 'bar': <function bar at 0x00AF6B70>, '__doc__': None}
「foo()」と「bar()」が定義されていますね。面白いです。では