python字符串转二进制文件_将字符串保存到python中的二进制文件

我想知道Python编程的一个非常基本的东西,因为我现在是一个非常基本的程序员:如何将结果(列表、字符串或其他)保存到Python中的文件中?

我一直在寻找,但找不到任何好的答案。

我在想“.write()”方法,但是(例如)它似乎不能处理字符串,我也不知道它应该做什么。

所以,我的情况是我有二进制文件,我想编辑,因此我发现很容易把它们转换成字符串,修改它们,现在我想保存它们I)回到二进制文件(jpeg图像)和ii)在我想要的文件夹。

我该怎么做?拜托,我需要帮助。

更新

下面是我要运行的脚本:import os, sys

newpath= r'C:/Users/Umberto/Desktop/temporary'

if not os.path.exists (newpath):

os.makedirs (newpath)

data= open ('C:/Users/Umberto/Desktop/Prove_Script/Varie/_BR_Browse.001_2065642654_1.BINARY', 'rb+')

edit_data= str (data.read () )

out_dir= os.path.join (newpath, 'feed', 'address')

data.close ()

# do my edits in a secon time...

edit_data.write (newpath)

edit_data.close ()

我得到的错误是:AttributeError: 'str' object has no attribute 'write'

更新2

我试图使用pickle模块序列化我的二进制文件,修改它并在最后保存它,但仍然无法使它工作。。。这就是我到目前为止一直在尝试的:import cPickle as pickle

binary= open ('C:\Users\Umberto\Desktop\Prove_Script\Varie\_BR_Browse.001_2065642654_1.BINARY', 'rb')

out= open ('C:\Users\Umberto\Desktop\Prove_Script\Varie\preview.txt', 'wb')

pickle.dump (binary, out, 1)

TypeError Traceback (most recent call last)

in ()

----> 1 pprint.pprint (pickle.dump (binary, out, 1))

C:\Python27\ArcGIS10.1\lib\copy_reg.pyc in _reduce_ex(self, proto)

68 else:

69 if base is self.__class__:

---> 70 raise TypeError, "can't pickle %s objects" % base.__name__

71 state = base(self)

72 args = (self.__class__, base, state)

TypeError: can't pickle file objects

另一件我没有得到的事情是,如果我要创建一个指向的文件(在我的例子中,我必须创建“out”,否则我就没有pickle方法的正确参数),或者没有必要。

希望我能找到解决办法。

备注:我也尝试了pickle.dumps(),但没有获得更好的结果。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值