解决python写入csv时如000111样式的字符串前面的0被忽略掉的问题
写入csv有两种方法,一种是pandas的to_csv(),一种是csv的writer.writerow。
这两种方法,都存在将一个例如000111的数据存入csv时,会忽略掉前面的000。
网络上找了不少的方法,真正好用的如下。
(一)pandas的to_csv()
假设000111是叫做“代码”的列的内容,那么to_csv之前,加上下面这一句
df.代码 = df.代码.apply('="{}"'.format)
df.to_csv(example.csv', encoding='gbk', index=False)
(二)csv的writer.writerow
假设000111是变量SECURITY_CODE的内容,则需要在此变量的字段后面加上\t
writer.writerow([str(SECURITY_CODE)+'\t', str(DATE[i]), str(NAME[i])])
保证好用。