我使用以下代码将数据框导出到csv:
delimiter="\t"
请注意,我使用abcdABCDAAbbcd ....
1234_3456ABCD ...
"-12345678AbCd" ...
,因为我不想在每个字段周围添加额外的引号。但是,当我检查输出csv文件时,仍然有一些字段用引号括起来。 e.g。
from tastypie.resources import ModelResource
from tastypie import fields
from services.models import Product
from tastypie.authorization import Authorization
class ProductResource(ModelResource):
shelf = fields.ForeignKey('shelf.api.ShelfResource', 'shelf', null=True)
class Meta:
queryset = Product.objects.all()
resource_name = 'product'
allowed_methods = ['get']
authorization = Authorization()
当字段的前导字符为" - "时,似乎会出现引号。为什么会发生这种情况,有没有办法避免这种情况?谢谢!
答案 0 :(得分:2)
您不使用CSV编写器提供的所有选项。它具有quoteMode
参数,该参数采用四个值中的一个(来自org.apache.commons.csv
documentation的说明:
ALL
- 引用所有字段 MINIMAL
(默认) - 引用包含特殊字符的字段,例如分隔符,引号字符或行分隔符中的任何字符 NON_NUMERIC
- 引用所有非数字字段 NONE
- 从不引用字段 如果想避免引用最后一个选项看起来是个不错的选择,不是吗?