パイプ演算子を使用して、2つのPythonスクリプト間でデータの複数のバッチをストリーミングする

ヴィシュヌ

ディスク上に中間ファイルを作成せずに、からscript1.pyデータを継続的にストリーミングしたいと思いscript2.pyます。私がやろうとしていることの例は次のとおりです。

script1.py

import time
import sys

for i in range(5):
    print i # stream of data
    print 'eof' # marker to separate files 
    sys.stdout.flush()
    time.sleep(1)

このスクリプトの出力は、私が望むことを正確に実行します。0〜4は、1秒のスリープ期間で印刷されます。

私は希望script2.pyからの収集データにscript1.py、「EOF」文字列になるまで、それはすぐに標準出力およびデータの次のバッチを待つ書きます。

script2.py

import time
import sys
data= sys.stdin.read()
sys.stdout.write(data)
sys.stdout.flush()
time.sleep(1)

実行しようとすると:

python script1.py | python script2.py

script2.pyscript1.py(0-4)からのデータ全体を待機してから、一度に1つの数値ではなく、一緒にstdoutに書き込みます。fromのscript2.pystdout.flushからデータをstdoutすることは可能script1.pyですか?

コメントに基づく更新:

両方のスクリプトが異なるDockerコンテナーに配置されており、Dockerコンテナー内にDockerをインストールしないようにしたいため、script2.pyから呼び出すことはできませんscript1.py

マイクミュラー

一度に1行を読んreadlinescript2.py

import time
import sys
while True:
    data = sys.stdin.readline()
    sys.stdout.write(data)
    sys.stdout.flush()
    time.sleep(1)

表示されるたびに数字のみを出力するバージョンeof

import time
import sys

data = ''
while True:
    line = sys.stdin.readline()
    if line.strip() != 'eof':
        data += line
        continue
    else:
        sys.stdout.write(data)
        sys.stdout.flush()
        time.sleep(1)
        data = ''

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ラップトップを使用して、複数のAndroidデバイスでビデオファイルをストリーミングできますか?

分類Dev

awkスクリプトを使用して2つのパターン間でテキストをプルする

分類Dev

ターミナルからの引数を使用してPythonスクリプトをデバッグします

分類Dev

複数のキューを使用して2つのPythonスクリプト間で通信する方法

分類Dev

kotlinの関数型プログラミングを使用して、同じコードで2つの異なるタイプのリストを処理する

分類Dev

(バッチ)スクリプトから複数のモニターで複数のChromeフルスクリーンインスタンスを開始する

分類Dev

2つの間でプルリクエストを使用してパブリック/プライベートgitリポジトリを作成する方法

分類Dev

iOSエンタープライズアプリをバックアップして複数のデバイスにインストールする方法

分類Dev

SpotfireでRスクリプティング/ TERRを使用した2つのデータセット間の比較

分類Dev

ハイストックチャートで複数のシリーズタイプを設定すると、データが間違って表示されます

分類Dev

ページ固有のクロップボックスの配列でghostscriptを使用して複数ページのPDFをトリミングする方法

分類Dev

パンダ:Pythonでレプリケートを使用してGroupbyのインデックスを作成する方法

分類Dev

パンダ:Pythonでレプリケートを使用してGroupbyのインデックスを作成する方法

分類Dev

Azure DevOpsリリースパイプラインで、異なるターゲットフォルダーを持つデプロイメントグループを複数のVMにどのようにデプロイしますか

分類Dev

Jenkinsワークフローを使用して複数のパイプラインで複雑なバリューストリームを作成する方法

分類Dev

シェルスクリプト内のパターンマッチングにgrepおよび論理演算子を使用する

分類Dev

マシン名を使用して複数のユーザー名を検索するには、バッチファイル/スクリプトが必要です

分類Dev

単一のパターンを使用して、luaスクリプトのファイルに含まれる複数の値をキャプチャする

分類Dev

ローカルテスト用のSparkストリーミングを使用して、ローカルセットアップで2つの並列カスタムレシーバーストリームを実行する

分類Dev

CLIを使用して複数のタイムスパンでウェーブオーディオを1行でトリミングする方法

分類Dev

パターンマッチングを使用して特定のディレクトリをコピーするBashスクリプト

分類Dev

ターミナルまたはマルチプロセッシングライブラリなしでPythonスクリプトによって使用されるCPUの数を制限するにはどうすればよいですか?

分類Dev

バッチスクリプトで複数の値をプログラムにパイプする

分類Dev

2つのPythonスクリプト間で連続してデータを送信する

分類Dev

グループを持つ複数のリミッターのセット間で文字列を抽出します

分類Dev

WindowsバッチスクリプトでFORLOOPを使用して複数のファイルを作成する

分類Dev

2つのデバイス/エミュレーターでアプリをデバッグする方法は?

分類Dev

ビデオのアップロードのサポートを含むネイティブスクリプトframewokを使用して、ビデオをストリーミングし、モバイルアプリで再生します

分類Dev

2つのパターン間で複数のグループを検索してキャプチャする

Related 関連記事

  1. 1

    ラップトップを使用して、複数のAndroidデバイスでビデオファイルをストリーミングできますか?

  2. 2

    awkスクリプトを使用して2つのパターン間でテキストをプルする

  3. 3

    ターミナルからの引数を使用してPythonスクリプトをデバッグします

  4. 4

    複数のキューを使用して2つのPythonスクリプト間で通信する方法

  5. 5

    kotlinの関数型プログラミングを使用して、同じコードで2つの異なるタイプのリストを処理する

  6. 6

    (バッチ)スクリプトから複数のモニターで複数のChromeフルスクリーンインスタンスを開始する

  7. 7

    2つの間でプルリクエストを使用してパブリック/プライベートgitリポジトリを作成する方法

  8. 8

    iOSエンタープライズアプリをバックアップして複数のデバイスにインストールする方法

  9. 9

    SpotfireでRスクリプティング/ TERRを使用した2つのデータセット間の比較

  10. 10

    ハイストックチャートで複数のシリーズタイプを設定すると、データが間違って表示されます

  11. 11

    ページ固有のクロップボックスの配列でghostscriptを使用して複数ページのPDFをトリミングする方法

  12. 12

    パンダ:Pythonでレプリケートを使用してGroupbyのインデックスを作成する方法

  13. 13

    パンダ:Pythonでレプリケートを使用してGroupbyのインデックスを作成する方法

  14. 14

    Azure DevOpsリリースパイプラインで、異なるターゲットフォルダーを持つデプロイメントグループを複数のVMにどのようにデプロイしますか

  15. 15

    Jenkinsワークフローを使用して複数のパイプラインで複雑なバリューストリームを作成する方法

  16. 16

    シェルスクリプト内のパターンマッチングにgrepおよび論理演算子を使用する

  17. 17

    マシン名を使用して複数のユーザー名を検索するには、バッチファイル/スクリプトが必要です

  18. 18

    単一のパターンを使用して、luaスクリプトのファイルに含まれる複数の値をキャプチャする

  19. 19

    ローカルテスト用のSparkストリーミングを使用して、ローカルセットアップで2つの並列カスタムレシーバーストリームを実行する

  20. 20

    CLIを使用して複数のタイムスパンでウェーブオーディオを1行でトリミングする方法

  21. 21

    パターンマッチングを使用して特定のディレクトリをコピーするBashスクリプト

  22. 22

    ターミナルまたはマルチプロセッシングライブラリなしでPythonスクリプトによって使用されるCPUの数を制限するにはどうすればよいですか?

  23. 23

    バッチスクリプトで複数の値をプログラムにパイプする

  24. 24

    2つのPythonスクリプト間で連続してデータを送信する

  25. 25

    グループを持つ複数のリミッターのセット間で文字列を抽出します

  26. 26

    WindowsバッチスクリプトでFORLOOPを使用して複数のファイルを作成する

  27. 27

    2つのデバイス/エミュレーターでアプリをデバッグする方法は?

  28. 28

    ビデオのアップロードのサポートを含むネイティブスクリプトframewokを使用して、ビデオをストリーミングし、モバイルアプリで再生します

  29. 29

    2つのパターン間で複数のグループを検索してキャプチャする

ホットタグ

アーカイブ