一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - 教你用Python讀取CSV文件的5種方式

教你用Python讀取CSV文件的5種方式

2022-02-24 00:18寰宇001 Python

一個股票的數據集,其實就是常見的表格數據,有自己的頭部和身體,這篇文章主要介紹了用Python讀取CSV文件的5種方式,通過五招給大家介紹的非常詳細,需要的朋友可以參考下

在python里面,讀取或寫入csv文件時,首先要import csv這個庫,然后利用這個庫提供的方法進行對文件的讀寫。

典型的數據集stocks.csv:

教你用Python讀取CSV文件的5種方式

一個股票的數據集,其實就是常見的表格數據。有股票代碼,價格,日期,時間,價格變動和成交量。這個數據集其實就是一個表格數據,有自己的頭部和身體。

 

第一招:簡單的讀取

我們先來看一種簡單讀取方法,先用csv.reader()函數讀取文件的句柄f生成一個csv的句柄,其實就是一個迭代器,我們看一下這個reader的源碼:

教你用Python讀取CSV文件的5種方式

喂給reader一個可迭代對象或者是文件的object,然后返回一個可迭代對象。

教你用Python讀取CSV文件的5種方式

  • 首先讀取csv 文件,然后用csv.reader生成一個csv迭代器f_csv
  • 然后利用迭代器的特性,next(f_csv)獲取csv文件的頭,也就是表格數據的頭
  • 接著利用for循環,一行一行打印row的內容,也就是表格數據的身體

教你用Python讀取CSV文件的5種方式

 

第二招:用nametuple

上面的第一招其實是最簡單的,下面我們用nametuple 來包裹一下這個生成的row數據。

教你用Python讀取CSV文件的5種方式

  • nametuple其實是一個非常有用的類,這個類屬于collections模塊,而這個模塊簡直就是一個百寶箱里面有非常多的牛逼的庫;
  • 這里我們用next(f_csv)其實就是獲取表格的頭部來初始化這個Row;
  • 然后循環來構造這個Row的數據,把我們表格里面的每一行的數據都喂成nametuple格式的row_info;
  • 這樣做的好處就是你可以隨心所欲的訪問這個row_info里面的數據,就想訪問類數據一樣,比如row_info.price

 

第三招:用tuple類型轉換

如果我們對csv數據每一行的類型都非常清楚的話,嘿嘿可以用一個設定好的數據格式轉換頭來對數據進行轉換。

教你用Python讀取CSV文件的5種方式

操作的步驟其實跟上面差不多,就是對數據結果的清洗處理稍微不一樣。這里非常巧妙的zip來構造一個嵌套的數據列表,然后用convert(data)把csv文件里面每一行的數據進行類型轉換,這招真的不錯!
看一下結果:

教你用Python讀取CSV文件的5種方式

 

第四招:用DictReader

上面用的nametuple其實也是一個數據的映射,有沒有什么方法可以直接把csv 的內容用映射的方法讀取,直接出來一個字典,還真有的,來看一下代碼:

教你用Python讀取CSV文件的5種方式

是不是非常簡捷,原來csv模塊直接內置了DictReader(),按照字典的方法進行讀取,然后生成一個有序的字典,看一下結果:

教你用Python讀取CSV文件的5種方式

有興趣的可以看一下這個DictReader()的源碼,它其實一個內部構造的迭代器類,在內部的__next__其實也是用的OrderedDict(zip(self.fieldnames, row))來生成的。

 

第五招:用字典轉換

如果我們需要對這個csv里面的數據進行清洗,因為讀出來的時候都是字符串,我們需要更新為特定的數據類型,這個時候也可以用字典轉換這一招,也是非常巧妙的,我們看一下源碼:

教你用Python讀取CSV文件的5種方式

原來的數據價格Price和成交量,我希望最后讀取生成的是一個浮點型數據和整形的數據,這么搞呢,用一個字典來巧妙的更新key即可。

  • 首先我們聲明一個自定義的類型轉換器field_types;
  • 然后循環生成一個可迭代的對象(key,conversion(row[key]);
  • 最后更新一下字典里面相同的key,比如row[‘price']的內容就會被更新了

參考鏈接 :

用Python讀取CSV文件的5種方式https://mp.weixin.qq.com/s/cs4buSULva1FgCctp_fB6g

到此這篇關于教你用Python讀取CSV文件的5種方式的文章就介紹到這了,更多相關Python讀取CSV文件內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/qq_40907977/article/details/108054088

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲色图色 | 日本一道一区二区免费看 | 日韩精品成人 | 成人在线av视频 | 亚洲色域网 | 华人在线京东热 | 国产精品亚洲片在线不卡 | 四虎国产一区 | 青青青久久久 | 欧美老骚 | 三极黄色 | 国产一区二区三区久久精品小说 | 日本中文字幕在线精品 | 国产精品久久久久久久久久久久 | 我被黑人彻底征服的全文 | 亚洲欧美日韩国产综合专区 | 强漂亮白丝女教师小说 | 美女脱了内裤打开腿让男人图片 | 日本高清免费不卡在线播放 | ts视频在线观看 | 亚洲 欧美 清纯 校园 另类 | 亚洲人成高清毛片 | 色综合伊人色综合网亚洲欧洲 | 毛片网站免费观看 | 国产福利一区二区精品视频 | 四虎comwww最新地址 | 国产欧美日韩在线播放 | 91香蕉嫩草 | 媳妇和公公小说 | 婷婷综合久久 | 特黄特色一级aa毛片免费观看 | 免费国产网站 | 沉香如屑西瓜视频免费观看完整版 | 含羞草传媒一天免费看下 | 国产精品一区二区三区免费 | 国产成人综合久久精品红 | 22sihu国产精品视频影视资讯 | 国产在线一区二区视频 | 亚洲haose在线观看 | 国产剧情一区 | 楚乔传第二部全60集免费观看 |