[英]How to compose Python exe programs using pipes?
Python新手在這里。
我創建了一個Python程序msg.py
,該程序輸出一條消息(Hello,World)。
我創建了一個Python程序id.py
,該程序讀取輸入並將其輸出。
使用py2exe
我創建了每個文件的可執行文件: msg.exe
和id.exe
我創建了一個DOS批處理文件,設置PATH
到dist
的文件夾msg.exe
和dist
的文件夾id.exe
。
然后,我將其添加到DOS批處理文件中:
味精| ID
當我運行批處理文件時,出現以下錯誤消息:
Traceback (most recent call last):
File "id.py", line 4, in <module>
IndexError: list index out of range
我推測管道符號不喂食的輸出msg.exe
到的輸入id.exe
。 那是對的嗎?
因此,我將其放置在批處理文件中:
ID <味精
當我運行批處理文件時,出現以下錯誤消息:
Access is denied.
我真的希望第5
步能夠正常工作。 也就是說,我真的希望能夠使用管道符號來編寫程序,如下所示:
A | B | C | ...
理想情況下, A
, B
, C
,...可以是用各種語言(例如Python
, C
等)編寫的可執行文件。
我該如何工作?
以下是我所做的詳細信息。 我在Windows 7上運行。
這是msg.py
import stdio
stdio.writeln('Hello, World')
這是id.py
import sys
import stdio
msg = sys.argv[1]
stdio.writeln(msg)
這是我的DOS批處理文件:
@echo OFF
set PATH=%PATH%;msg/dist;id/dist
msg | id
sys.argv
用於命令行參數(id.py abc)。
要從管道讀取,您需要在id.py中使用sys.stdin.read()
。
編輯:另請參閱: https : //stackoverflow.com/a/7608205/478656
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.