为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 sys.stdout 返回任何对象

如何使用 sys.stdout 返回任何对象

动漫人物 2021-12-21 16:54:34
我正在处理一个 python bash 脚本,我想输出一个从第一个文件到下一个文件的列表,如下所示:发件人.py#!/usr/bin/env pythonimport sysl = [1,2,4,6,8,"maybe some text"]sys.stdout.write(Qs)sys.stdout.flush()接收器.py#!/usr/bin/env pythonimport sysprint(sys.stdin.readline())然后在 bash 中做./sender_py | ./receiver我知道问题是这个方法只能读取一个字符串,但是有没有其他方法可以传递任何对象。在这种情况下,我传递了一个列表,但稍后我想尝试其他对象,例如 pandas dfs。
查看完整描述

1 回答

?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

您可以将数据序列化与pickle 一起使用:


发件人.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))

接收器.py


#!/usr/bin/env python

import sys

import pickle

print(pickle.loads(sys.stdin.buffer.read()))


查看完整回答
反对 回复 2021-12-21
  • 1 回答
  • 0 关注
  • 164 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信