python csv实时一条一条插入且表头不重复问题

目录

csv实时一条条插入且表头不重复

1、主要就是在最开始插入的时候判断下表头或者表格是否有数据

2、用csv reader(然后主要写是a追加模式,读是r模式)

import csv
with open(\"111.csv\",\"a\",encoding=\'utf-8\',newline=\"\") as f:

     k = csv.writer(f, dialect=\"excel\")
      with open(\"111.csv\", \"r\", encoding=\'utf-8\', newline=\"\") as f:
          reader = csv.reader(f)
          if not [row for row in reader]:
              k.writerow([\"标题\", \"链接\", \"喜欢\"])
              k.writerow(list)
          else:
              k.writerow(list)
all_datas = [[1,2],[2,3],[1,2],[4,5]]
for list1 in all_datas:
    with open(r\"ablchange1.csv\", \'a+\', encoding=\'utf-8-sig\', newline=\"\") as f:

        k = csv.writer(f, dialect=\"excel\")
        with open(\"ablchange1.csv\", \"r\", encoding=\'utf-8-sig\', newline=\"\") as f:
            reader = csv.reader(f)
            if not [row for row in reader]:
                k.writerow([\"a\",\"b\"])

                k.writerow(list1)
            else:
                k.writerow(list1)

连续写入txt

with open(\"111.txt\",\"a\") as f:
    for i in range(100000):
        f.write(str(i)+\"\\n\")
        if i==9000:
            break

csv写入时指定表头

import csv
with open(\'names.csv\', \'w\') as csvfile:
    fieldnames = [\'first_name\', \'last_name\']
    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
    writer.writeheader()
    writer.writerow({\'first_name\': \'Baked\', \'last_name\': \'Beans\'})
    writer.writerow({\'first_name\': \'Lovely\', \'last_name\': \'Spam\'})
    writer.writerow({\'first_name\': \'Wonderful\', \'last_name\': \'Spam\'})

练习

    with open(\'specific.csv\', \'a\', newline=\"\") as csvfile:
        fieldnames = [\'ebayno\', \"pov\", \"mpn\", \"ipn\", \"opn\"]
        writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
        writer.writeheader()
    file = open(\"aces_less.csv\",\"w\" , newline=\"\")
    writer = csv.DictWriter(file, fieldnames=[\"asin\",\"state\"])
    writer.writeheader()
    for i in range(len(qs)):
        print(qs[i])
        state = getDataById(qs[i])
        print(\"状态 = \" + state + \"\\n\")
        writer.writerow({\"asin\":qs[i], \"state\": state})

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容