我希望在 Python 2.7 中编写一个包含 6 行的简单文本文件。
我正在使用这段代码:
import csv
export=open('./images2/test.tfw', "wb")
writer=csv.writer(export, delimiter=' ', quoting=csv.QUOTE_NONE)
writer.writerow('0.06')
writer.writerow('0.00')
writer.writerow('0.00')
writer.writerow('-0.06')
writer.writerow('-10.59')
writer.writerow('38.49')
export.close()
我正在进入该文件:
0 . 0 6
0 . 0 0
0 . 0 0
- 0 . 0 6
- 1 0 . 5 9
3 8 . 4 9
但我不需要数字中的空格或其他任何内容,我只需要这个:
0.06
0.00
0.00
-0.06
-10.59
38.49
但当我尝试时delimiter=''
or delimiter=None
,我收到错误“必须设置分隔符”。
如何在没有分隔符的情况下编写数字?也许这是一个非常基本的问题,但我在谷歌中找不到它。谢谢你!
writerow
需要一个可迭代对象,其中的每个元素都将写入文件,并由分隔符分隔。因此,当你给它一个字符串(它本身是一个可迭代的)时,它会将每个字符写入文件,并用分隔符分隔。
相反,您想要做的是将“行”作为字符串列表提供。在您的情况下,每一行只有一个字符串,因此将每一行作为仅包含一个字符串的列表提供。
CSV 格式需要某种分隔符。传统上,此分隔符是逗号 - 因此得名 (CSV = 逗号分隔值)。但是,如果您觉得需要使用不同的分隔符,您当然可以这样做(典型的选择包括空格、制表符、连字符等)
import csv
export=open('./images2/test.tfw', "wb")
writer=csv.writer(export, delimiter=',', quoting=csv.QUOTE_NONE)
writer.writerow(['0.06'])
writer.writerow(['0.00'])
writer.writerow(['0.00'])
writer.writerow(['-0.06'])
writer.writerow(['-10.59'])
writer.writerow(['38.49'])
export.close()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)