<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          python 處理 csv 文件

          共 1780字,需瀏覽 4分鐘

           ·

          2021-02-28 22:25

          csv 文件是一種逗號分隔的純文本形式存儲的表格數(shù)據(jù),Python內(nèi)置了CSV模塊,可直接通過該模塊實現(xiàn)csv文件的讀寫操作,在web應用中導出數(shù)據(jù)是比較常見操作。

          這篇文章介紹csv模塊的基本用法

          寫操作

          writer.writerow, 將多列數(shù)據(jù)寫入一行

          import?csv

          with?open('some.csv',?'w',?newline='')?as?f:?
          ????writer?=?csv.writer(f)
          ????writer.writerow(["123",?"234",?"345"])
          ????writer.writerow(["abc",?"efg",?"hij"])

          如果以文本文件的方式打開,每行數(shù)據(jù)之間都是用逗號隔開的文本字符串

          寫入時,必須指定 newline=’’, 否則每插入一行就有一個空行

          讀操作

          with?open('some.csv',?'r',?newline="")?as?f:?
          ????reader?=?csv.reader(f)
          ????for?row?in?reader:
          ????????print(row)


          輸出

          ['123',?'234',?'345']
          ['abc',?'efg',?'hij']

          DictWriter & DictReader

          csv.DictWriter 對象引入了一個fieldnames參數(shù), fieldnames是csv文件中的表頭,就是第一行中的數(shù)據(jù)

          with?open("person.csv",?'w',?newline='')?as?f:
          ????fieldnames?=?["name",?"age",?"sex"]
          ????writer?=?csv.DictWriter(f,?fieldnames=fieldnames)
          ????writer.writeheader()
          ????writer.writerow({"name":?"zhangsan",?"age":?10,?"sex":?"male"})
          ????writer.writerow({"name":?"lis",?"age":?20,?"sex":?"male"})


          with?open('person.csv',?'r')?as?f:
          ????reader?=?csv.DictReader(f)
          ????for?row?in?reader:
          ????????print(row)

          每行輸出的是一個字典對象

          OrderedDict([('name',?'zhangsan'),?('age',?'10'),?('sex',?'male')])
          OrderedDict([('name',?'lis'),?('age',?'20'),?('sex',?'male')])

          默認情況下導出的字符串全是數(shù)字時,在excel中打開時會被自動轉換成科學計數(shù)格式

          import?csv

          field_order?=?["會診單號"]
          with?open("導出.csv",?'w',?encoding="utf8",?newline="")?as?csvfile:
          ????writer?=?csv.DictWriter(csvfile,?field_order)
          ????writer.writeheader()
          ????writer.writerow({"會診單號":?"20210217162737860175"})

          只需要在字符串后面加轉義字符’\t’即可變成字符串

          import?csv

          field_order?=?["會診單號"]
          with?open("導出.csv",?'w',?encoding="utf8",?newline="")?as?csvfile:
          ????writer?=?csv.DictWriter(csvfile,?field_order)
          ????writer.writeheader()
          ????writer.writerow({"會診單號":?"20210217162737860175"+'\t'})

          瀏覽 31
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费黄视频网站大全免费 | 乱伦五月天 | 国产一级操逼视频免费播放 | 欧美国产一级片 | www.青春草 |