Cのread
:PythonはCのread関数と同じものは何ですか?
リード()関数は、バッファがbufが指すに、開いているファイル記述子、fildesに対応するファイルからnbyteバイトを読み取るしようとしなければなりません。
これらの関数は正常終了時に、のバイト数を示す負でない整数を返します。実際にはとなります。さもなければ、関数は-1を返し、エラーを示すためにerrnoをセットする。ストリームから最大n文字で
読む:
Pythonの
read
。n個の文字があるか、ヒットEOFになるまで、下位のバッファから読み込みます。 nが負または省略されている場合は、EOFまで読み取ります。
太字は鉱山です。基本的に、Pythonは、currrently availableデータがバッファサイズよりも小さい場合にEOFを見つけることを主張します。
'file.read(1024)'は 'n'文字を返します.nは1024文字までの文字数です。必要なものを再現可能な例でクリアすることはできますか? –
@RafaelBarrosこれは、通常のファイルなどの非ブロッキングリソースから読み取る場合にのみ該当します。ソケットやパイプから読み込むとき、Cの 'read()'は*いくつかの*データが利用可能になるまで待ってからデータを返します。 Pythonの 'file.read'はCの' fread() 'と同様に、エラーやEOFに遭遇しなければ、要求されたすべてのデータを返そうとします。 – user4815162342
C言語に 'read'はありません。引用しているものは、お使いのOSが提供するAPIのマニュアルです。そのようなAPIは通常、Cのバインドを持っていますが、幸いなことにPythonの場合もあります。 'posix.read'や' os.read'を見たいと思っています。 –