python输出结果空格分割_用Python编写固定宽度,以空格分隔的CSV输出
我想使用Python的csv編寫器編寫一個(gè)固定寬度,空格分隔和最小引用的CSV文件.
輸出示例:
item1 item2
"next item1" "next item2"
anotheritem1 anotheritem2
如果我用
writer.writerow( (“{0:15s}”.format(item1), “{0:15s}”.format(item2)) )
…
然后,使用空格定界符,由于項(xiàng)目格式的尾部空格而添加引號(hào)或轉(zhuǎn)義符(取決于csv.QUOTE_ *常數(shù)),導(dǎo)致格式被破壞:
"item1 " "item2 "
"next item1 " "next item2 "
"anotheritem1 " "anotheritem2 "
當(dāng)然,我可以自己格式化所有內(nèi)容:
writer.writerow( (“{0:15s}{1:15s}”.format(item1, item2)) )
但是使用csv編寫器沒(méi)有太多意義.另外,當(dāng)項(xiàng)目中嵌入空格并且應(yīng)使用引號(hào)/轉(zhuǎn)義符時(shí),我將不得不手動(dòng)進(jìn)行整理.換句話說(shuō),似乎我需要一個(gè)(不存在)“ QUOTE_ABSOLUTELYMINIMAL” csv常量,該常量將充當(dāng)“ QUOTE_MINIMAL”,但也將忽略尾隨空格.
有沒(méi)有一種方法可以實(shí)現(xiàn)“ QUOTE_ABSOLUTELYMINIMAL”行為,或者有其他方法可以使用Python的CSV模塊獲取固定寬度,以空格分隔的CSV輸出?
我想要CSV文件中的固定寬度功能的原因是更好的可讀性.因此,它會(huì)以CSV格式進(jìn)行讀取和寫入,但由于采用了列結(jié)構(gòu),因此可讀性更好.讀取不是問(wèn)題,因?yàn)閏sv skipinitialspace選項(xiàng)可以忽略多余的空格.令我驚訝的是,寫作似乎是一個(gè)問(wèn)題.
編輯:我得出結(jié)論,用當(dāng)前的csv插件無(wú)法實(shí)現(xiàn).它不是一個(gè)內(nèi)置選項(xiàng),我看不到任何合理的方式來(lái)手動(dòng)實(shí)現(xiàn)它,因?yàn)樗坪鯖](méi)有辦法由Python的csv編寫器編寫額外的定界符而不引用或轉(zhuǎn)義它們.因此,我可能必須編寫自己的csv編寫器.
總結(jié)
以上是生活随笔為你收集整理的python输出结果空格分割_用Python编写固定宽度,以空格分隔的CSV输出的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 虚拟机linux的安装gcc编译器(虚拟
- 下一篇: python的setting怎么找_Py