Python新手在这里。
我创建了一个Python程序msg.py
,它输出一条消息(Hello,World)。
我创建了一个Python程序id.py
,它读取输入并输出它。
使用py2exe
我为每个人创建了一个可执行文件:msg.exe
和id.exe
我创建了一个DOS批处理文件,将PATH
设置为dist
的{{1}}文件夹和msg.exe
的{{1}}文件夹。
然后我将其添加到DOS批处理文件中:
msg | ID
当我运行批处理文件时,收到此错误消息:
dist
我猜测管道符号没有将id.exe
的输出提供给Traceback (most recent call last):
File "id.py", line 4, in <module>
IndexError: list index out of range
的输入。这是对的吗?
然后我把它放在批处理文件中:
id&lt; MSG
当我运行批处理文件时,收到此错误消息:
msg.exe
我真的希望步骤id.exe
能够奏效。也就是说,我真的希望能够使用管道符号来编写程序,如下所示:
Access is denied.
理想情况下,5
,A | B | C | ...
,A
,...可以是用各种语言编写的可执行文件,例如B
,C
等。< / p>
如何让它发挥作用?
以下是我所做的细节。我在Windows 7上运行。
以下是Python
C
以下是msg.py
import stdio
stdio.writeln('Hello, World')
这是我的DOS批处理文件:
id.py
答案 0 :(得分:3)
sys.argv
用于命令行参数(id.py a b c)。
要从管道中读取,您需要在id.py中使用sys.stdin.read()
。