gpt4 book ai didi

Python 操作系统输出

转载 作者:太空狗 更新时间:2023-10-29 11:37:20 24 4
gpt4 key购买 nike

我的代码是:

#!/usr/bin/python

## print linux os command output

import os

p = os.popen ('fortune | cowsay',"r")
while 1:
line = p.readline()
if not line: break
print line

retvalue = os.system ("fortune | cowsay")
print retvalue

输出是:

 ______________________________________

< Stay away from flying saucers today. >

--------------------------------------

\ ^__^

\ (oo)\_______

(__)\ )\/\

||----w |

|| ||

______________________________________
/ Q: What happens when four WASPs find \
| themselves in the same room? A: A |
\ dinner party. /
--------------------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
0

我的问题是:

  1. 为什么第一个带有os.popencowsay的输出每行后面都有一个空行?
  2. 为什么第二个cowsay os.system的输出末尾加了一个零?

最佳答案

p.readline 返回的行已经在末尾附加了换行符。 print 函数添加了一个额外的换行符,总共有两个。这就是为什么每个之间有一个空行。尝试做 print line.rstrip("\n")

os.system 返回一个数字,指示已执行命令的退出状态。 财富 | cowsay 退出时没有任何问题,因此它的退出代码为零。您的 print 函数没有打印母牛和语音气球;它们被 system 调用本身发送到标准输出。如果你不想要零,就不要打印 retvalue

关于Python 操作系统输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26938046/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com