溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python讀取當(dāng)前目錄下的CSV文件數(shù)據(jù)

發(fā)布時(shí)間:2020-08-20 19:12:43 來(lái)源:腳本之家 閱讀:270 作者:鄭旭濤 欄目:開(kāi)發(fā)技術(shù)

在處理數(shù)據(jù)的時(shí)候,經(jīng)常會(huì)碰到CSV類型的文件,下面將介紹如何讀取當(dāng)前目錄下的CSV文件,步驟如下

1、獲取當(dāng)前目錄所有的CSV文件名稱:

#創(chuàng)建一個(gè)空列表,存儲(chǔ)當(dāng)前目錄下的CSV文件全稱
file_name = []
 
#獲取當(dāng)前目錄下的CSV文件名
def name():
  #將當(dāng)前目錄下的所有文件名稱讀取進(jìn)來(lái)
  a = os.listdir()
  for j in a:
    #判斷是否為CSV文件,如果是則存儲(chǔ)到列表中
    if os.path.splitext(j)[1] == '.csv':
      file_name.append(j)

2、將CSV文件讀取進(jìn)來(lái):

#將CSV文件內(nèi)容導(dǎo)入到csv_storage列表中
def csv_new(storage,name):
  #創(chuàng)建一個(gè)空列表,用于存儲(chǔ)CSV文件數(shù)據(jù)
  csv_storage = []
  with codecs.open(storage, 'r', encoding='utf-8') as fp:
    fp_key = csv.reader(fp)
    for csv_key in fp_key:
      csv_reader = csv.DictReader(fp, fieldnames=csv_key)
      for row in csv_reader:
        csv_dict = dict(row)
        csv_storage.append(csv_dict)

3、連續(xù)讀取多個(gè)CSV文件:

設(shè)置一個(gè)for循環(huán),將第一部分讀取到的文件名稱逐個(gè)傳遞給讀取文件的函數(shù),全部代碼如下所示:

import codecs
import csv
import os
 
#創(chuàng)建一個(gè)空列表,存儲(chǔ)當(dāng)前目錄下的CSV文件全稱
file_name = []
 
#獲取當(dāng)前目錄下的CSV文件名
def name():
  #將當(dāng)前目錄下的所有文件名稱讀取進(jìn)來(lái)
  a = os.listdir()
  for j in a:
    #判斷是否為CSV文件,如果是則存儲(chǔ)到列表中
    if os.path.splitext(j)[1] == '.csv':
      file_name.append(j)
 
 
#將CSV文件內(nèi)容導(dǎo)入到csv_storage列表中
def csv_new(storage):
  #創(chuàng)建一個(gè)空列表,用于存儲(chǔ)CSV文件數(shù)據(jù)
  csv_storage = []
  with codecs.open(storage, 'r', encoding='utf-8') as fp:
    fp_key = csv.reader(fp)
    for csv_key in fp_key:
      csv_reader = csv.DictReader(fp, fieldnames=csv_key)
      for row in csv_reader:
        csv_dict = dict(row)
        csv_storage.append(csv_dict)
  for i in csv_storage:
    print(i)
 
#主要運(yùn)行函數(shù)
if __name__ == '__main__':
  #運(yùn)行獲取當(dāng)前目錄下所有的CSV文件
  name()
  #將多個(gè)CSV文件逐個(gè)讀取
  for name in file_name:
    csv_new(name)
  print(file_name)

4、最終的結(jié)果輸出:

python讀取當(dāng)前目錄下的CSV文件數(shù)據(jù)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI