C++ では、次のような入力を取得できます。
cin >> a >> b >> c;
そして、a
できますint
、b
できますfloat
、そして何でもできます... Pythonc
で同じことを行うにはどうすればよいですか?
input()
そしてraw_input()
、私がそれらを使用している方法では、望ましい結果が得られないようです。
通常input()
、本番コードでは使用しないでください。と が必要な場合はint
、float
これを試してください。
>>> line = raw_input().split()
>>> a = int(line[0])
>>> b = float(line[1])
>>> c = " ".join(line[2:])
それはすべて、達成しようとしていることによって異なりますが、読みやすさが重要であることを忘れないでください。あいまいなワンライナーはクールに見えるかもしれませんが、保守性に直面して、賢明なものを選択してみてください:)
(PS: でエラーをチェックすることを忘れないでくださいtry: ... except (ValueError, IndexError):
)
C++ cin は sys.stdin から読み取るため、次のようなことを行うことがよくあります。
import sys
tokens= sys.stdin.read().split()
try:
a= int(token[0])
b= float(token[1])
except ValueError, e:
print e # handle the invalid input
何をしているかにもよりますが、getoptモジュールのようなものが役に立つかもしれませんが、それは特定の状況でのみであり、それがあなたの状況に適用されるかどうかはわかりません。