包含python分割csv的詞條

本文目錄一覽:

python讀取CSV文件如何讀取最後一行的指

你這裡有2個問題

1. 用csvfile.readlines()

2.你取的targetLine是一個字元串,需要進行分割

具體代碼如下,測試通過,請採納^_^

# coding=utf8

with open(“C:\\test.csv”) as csvfile:

mLines = csvfile.readlines()

targetLine = mLines[-1]

a=targetLine.split(‘,’)[0]

print(a)

Python csv庫整理(部分)

近期,筆者到一些數據競賽網站進行觀察學習,發現很多數據是以csv文件處理的(廢話).因而,磨刀不誤砍柴工,筆者先對Python的csv庫進行學習.

csv模塊實現了CSV格式表單數據的讀寫.這可以以一個兼容Excel的方式讀寫其數據文件,csv模塊中的reader和writer類被用來讀寫序列化的數據.也可以使用DictReader類和DictWriter類以字典的方式讀取數據.

返回一個reader對象,該對象逐行遍歷csvfile(文件和列表均適用,但是文件的話應該newline=”.

默認每一行讀取一個字元串組成的列表(而非數值,除非修改QUOTE_NONUMERIC).

返回一個writer對象,負責將數據在給定的文件類對象上轉換成帶分隔符的字元串.csvfile(只要該對象有write()方法,文件的話應該newline=”.)

這兩個方法可以把name字元串和dialect關聯/脫鉤.dialect可以是Dialect的子類,或者fmtparams的關鍵字參數.

返回一個Dialect對象為name的變種,若其未註冊,拋出Error.

返回已經註冊的所有變種的 名稱

返回當前解析器允許的最大欄位大小,如果制定了參數,參數將成為新的最大欄位大小.

該對象操作上類似reader,但是把每行中的信息映射到一個字典,字典的鍵由fieldnames給出

fieldname的參數是一個序列sequence [1] ,如果參數預設,默認第一行的值作為欄位名.

如果某一行中的欄位多於欄位名(比如說約定有5項屬性,但是這一行卻出現了6個數據),則其餘欄位將放入列表中,欄位名由 restkey 指定(默認為 None)。如果非空白行的欄位少於欄位名,則缺少的值將用 None 填充。

#其實這玩意應該就跟各種填表裡面的備註用法差不多.

3.8中返回的行是dict類型.

該對象操作上類似reader,但是把每行中的信息映射到一個字典,字典的鍵由fieldnames給出,fieldname參數是不可預設的.restval用來指定字典缺少鍵的時候要寫入的值.extrasaction用於指定關鍵鍵在fieldname中找不到的情況的處理機制.’raise’引發ValueError,而’ignore’則會被忽略.

這個類被用來瑞段csv文件的格式

以下諸類均在括弧中標註了在其變種註冊表中的名稱

定義了Excel生成的csv文件的常規屬性.(‘excel’)

定義了Excel生成的,tab分割的csv文件的常規屬

性.(‘excel-tab’)

定義了UNIX系統上生成的csv文件的常規屬性(‘unix’):

任意可能發生的csv庫函數錯誤.

參考鏈接

Python3.8.2文檔中關於csv庫的相關文檔

Python之csv模塊

csv文件具有格式簡單,快速存取,兼容性好等特點,工程、金融、商業等很多數據文件都是採用csv文件保存和處理。工作中數據處理也用到了csv,簡要總結下使用經驗,特別是那些由於本地兼容性導致的與官方文檔的差異使用。

csv(comma Seperated Values)文件的格式非常簡單,類似一個文本文檔,每一行保存一條數據,同一行中的各個數據通常採用逗號(或tab)分隔。

python自帶了csv模塊,專門用於處理csv文件的讀取和存檔。

csv模塊中,主要由兩種方式存取csv文件:函數方法;類方法。

csv.reader(csvfile,dialect =’excel’,** fmtparams)

返回一個reader對象,它將迭代給定csvfile中的行。

csvfile可以是任何支持迭代器協議的對象,並在每次next()調用其方法時返回一個字元串- 文件對象和列表對象都是合適的。如果csvfile是一個文件對象,那麼它必須在平台上以「b」標誌打開,這會產生影響。可以給出可選的 dialect 參數,該參數用於定義特定於CSV方言的一組參數。它可以是類的子類的實例,也可以是函數Dialect返回的字元串之一 list_dialects()。其他可選的fmtparams可以給出關鍵字參數來覆蓋當前方言中的各個格式參數。

csv.writer(csvfile,dialect =’excel’,** fmtparams)

返回一個編寫器對象,負責將用戶的數據轉換為給定的類文件對象上的分隔字元串。

csvfile可以是帶有write()方法的任何對象 。如果csvfile是一個文件對象,那麼它必須在平台上以「b」標誌打開,這會產生影響。 可以給出可選的dialect參數,該參數用於定義特定於CSV方言的一組參數。它可以是類的子類的實例,也可以是函數Dialect返回的字元串之一 list_dialects()。可以給出其他可選的fmtparams關鍵字參數來覆蓋當前dialect中的各個格式參數。

class csv.DictReader(f,fieldnames = None,restkey = None,restval = None,dialect =’excel’,* args,** kwds)

創建一個像常規閱讀器一樣操作的對象,但將讀取的信息映射到一個dict,其鍵由可選的 fieldnames 參數給出。 欄位名 的參數是一個序列,其元素與輸入數據的順序中的欄位相關聯。這些元素成為結果字典的關鍵。如果省略 fieldnames 參數,則文件 f 的第一行中的 值 將用作欄位名。如果讀取的行包含的欄位多於欄位名序列,則將剩餘數據添加 為由restkey 值鍵入的序列。如果讀取的行的欄位數少於欄位名序列,則其餘的鍵將採用可選的 restval 參數的值。任何其他可選或關鍵字參數都將傳遞給基礎 reader 實例。

class csv.DictWriter(f,fieldnames,restval =”,extrasaction =’raise’,dialect =’excel’,* args,** kwds)

創建一個像常規編寫器一樣操作的對象,但將字典映射到輸出行。的欄位名的參數是一個序列識別在哪些值在傳遞給字典中的順序按鍵的writerow()方法被寫入到文件˚F。如果字典缺少欄位名中的鍵,則可選的restval參數指定要寫入的值。如果傳遞給方法的字典包含在欄位名中找不到的鍵,則可選的extrasaction參數指示要採取的操作。如果設置為a 則被提升。如果設置為writerow()’raise’ValueError’ignore’,字典中的額外值將被忽略。任何其他可選或關鍵字參數都將傳遞給基礎 writer實例。

請注意,與DictReader類不同,它的fieldnames參數DictWriter不是可選的。由於Python的dict 對象沒有排序,因此沒有足夠的信息來推斷應該將行寫入文件f的順序。

python中怎麼處理csv文件

什麼是CSV

就是內容用逗號隔開,後綴是『.csv』的文件。它可以被任何一個文本編輯器打開。如果用excel打開,它又可以是這樣的:

END

讀CSV

典型的可處理的csv文件,通常含有表頭,也就是每列的列名。這樣一來,每一行的內容就可以被當作是以表頭為key的字典。於是可以使用csv定義的類:

class csv.DictReader(csvfile, fieldnames=None, restkey=None, restval=None, dialect=’excel’, *args, **kwds)

下面是官方的例子(Python 3)。我們看到,對於csv文件的內容,我們可以通過相應的tag,也就是字典的key來讀取。

在實際使用過程中,為了分離代碼和方便閱讀,可以先把讀取的內容轉存到列表,隨後再根據各個key進行分開處理(針對多列的情況)。

END

寫CSV

同樣的,寫入的也是列表。使用的類:

class csv.DictWriter(csvfile, fieldnames, restval=”, extrasaction=’raise’, dialect=’excel’, *args, **kwds)

官方例子:我們看到,有專門的函數來寫入表頭,沒有表頭數據是無法對應的。需要注意的是,對於下列語句,『w』需要修改為『wb』,否則每次寫入會有多餘空行

with open(‘names.csv’, ‘wb’) as csvfile

python 讀取多個csv文件中某一列,並生成一個新csv文件

csv文件應該是用逗號分隔得才對,否則怎麼算作是csv文件。樓主你開玩笑吧。否則你這只是一個普通的文本文件。如果是真正的csv文件,我只說一點,python裡面有csv模塊,專門處理csv文件。如果是空格分割應該也可以,建議你,看一下python的csv模塊的API,蠻簡單的代碼,其實如果不用的話自己寫也可以。不是很複雜。代碼片段如下:

def deal_file(file_in, file_out)

    with open(file_in, ‘r’) as f_in:

        with open(file_out, ‘w’) as f_out:

            for line in f_in:

                f_out.write(line.split(‘ ‘)[2] + ‘\n’)

之後你可以將所有的輸入文件放到一個列表裡面,進行迭代調用這個函數就可以了。

如何把csv的數據分割成多個excel數據?

1、首先Excel2007版一下最大支持65000多條數據,你必須安裝Office2007版以上。

2、使用Access2007(Office組件之一),新建一個資料庫。

3、使用導入外部數據中的「從文本導入」功能,選擇CSV文件,注意一下導入嚮導中的「數據類型」及選擇第一行做標題,直至完成。

4、導出為Excel文件即可。

目的就是避免幾十萬數據量造成電腦假死機。

當然你的電腦夠BT的話,直接用Excel打開CSV文件,另存為Excel格式即可。

可以用 access,但是沒有必要。CSV 是文本文件,網上找一個支持按行拆分的文件分割的小軟體處理就可以了。

如果你不排斥自己寫個腳本來處理,那麼 bat 、power shell、VBS 都是可選的,會 python、perl 就更好了。比導入 access 之後再自己寫輸出可以省一步功夫。

原創文章,作者:JG2VK,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/129540.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
JG2VK的頭像JG2VK
上一篇 2024-10-03 23:26
下一篇 2024-10-03 23:26

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • 蝴蝶優化演算法Python版

    蝴蝶優化演算法是一種基於仿生學的優化演算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化演算法Python版…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29

發表回復

登錄後才能評論