私はPythonでmap関数をいじっていましたが、次の動作を理解するための助けを探していました:
foo="12345"
print map(int,foo)
を与えます[1, 2, 3, 4, 5]
。明らかにint(foo)
吐き出す12345
。では、正確には何が起こっているのでしょうか。文字列は文字ごとに反復可能であるため、上記の2行は
print [int(x) for x in foo]
同じ結果が出力されることはわかっていますが、舞台裏で何か違うことはありますか? あるものは他のものよりも効率的ですか、それとも優れていますか? もう1つは「pythonic」ですか?
どうもありがとう!