[英]How to return any object with sys.stdout
我正在使用python bash脚本,因此我希望将第一个文件的列表输出到下一个文件:
#!/usr/bin/env python
import sys
l = [1,2,4,6,8,"maybe some text"]
sys.stdout.write(Qs)
sys.stdout.flush()
#!/usr/bin/env python
import sys
print(sys.stdin.readline())
./sender_py | ./receiver
我知道问题是此方法只能读取字符串,但是还有其他任何方法可以传递任何对象。 在这种情况下,我要传递一个列表,但是稍后我想尝试其他对象,例如pandas dfs。
您可以对pickle使用数据序列化:
sender.py
#!/usr/bin/env python
import sys
import pickle
l = [1,2,4,6,8,"maybe some text"]
sys.stdout.buffer.write(pickle.dumps(l))
receiver.py
#!/usr/bin/env python
import sys
import pickle
print(pickle.loads(sys.stdin.buffer.read()))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.