python怎么将列表写入文件_python如何将列表列表写入文件

I am trying to write a list of lists of strings to a file.

My big list is of the forme:

1.0 '0:25.0' '1:50.0' '2:131.0' '3:202.0'

1.0 '0:2.0' '1:36.0' '2:131.0' '3:188.0'

-1.0 '0:56.0' '1:53.0' '2:55.0' '3:58.0'

-1.0 '0:50.0' '1:51.0' '2:48.0' '3:55.0'

and so on ...

the first column is of type int and the remaining are of type str.

I have tried the following code:

f = open('dataset', 'w')

for i in range(len(mylist[0]):

f.write(str(item) for item in mylist[i])

f.close()

But I get the following error:

TypeError: expected a character buffer object

the error occured in line 3 of the above code (f.write(...))

EDIT:

I have tried:

with open("train_data.csv", 'w') as f:

writer = csv.writer(f)

writer.writerows(listdata)

But, surprisingly, for lines starting with -1.0 I only get the 1st 31 elements ( each line (list) contains 362 elements). I have no idea why this is happening.

解决方案

I would do like this.

from __future__ import with_statement

mylist = [[1.0,'0:25.0','1:50.0'],[-1.0,'0:56.0','1:53.0']] # as example

with open('output.txt', 'w') as f:

for _list in mylist:

for _string in _list:

#f.seek(0)

f.write(str(_string) + '\n')

As a result, I get this in output.txt:

1.0

0:25.0

1:50.0

-1.0

0:56.0

1:53.0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值