當前位置:首頁 » 編程語言 » pythonexcel轉csv

pythonexcel轉csv

發布時間: 2023-11-20 13:30:00

『壹』 求python大神指導,一個csv文件,把其中每一列的數據提取出來單獨保存為一個csv文件

csv是Comma-Separated Values的縮寫,是用文本文件形式儲存的表格數據,比如如下的表格:

就可以存儲為csv文件,文件內容是:
No.,Name,Age,Score
1,mayi,18,99
2,jack,21,89
3,tom,25,95
4,rain,19,80

假設上述csv文件保存為"test.csv"
1.讀文件
如何用Python像操作Excel一樣提取其中的一列,即一個欄位,利用Python自帶的csv模塊,有兩種方法可以實現:
第一種方法使用reader函數,接收一個可迭代的對象(比如csv文件),能返回一個生成器,就可以從其中解析出csv的內容:比如下面的代碼可以讀取csv的全部內容,以行為單位:

#!/usr/bin/python3
# -*- conding:utf-8 -*-
__author__ = 'mayi'

import csv

#讀
with open("test.csv", "r", encoding = "utf-8") as f:
reader = csv.reader(f)
rows = [row for row in reader]

print(rows)

得到:
[['No.', 'Name', 'Age', 'Score'],
['1', 'mayi', '18', '99'],
['2', 'jack', '21', '89'],
['3', 'tom', '25', '95'],
['4', 'rain', '19', '80']]

要提取其中某一列,可以用下面的代碼:

#!/usr/bin/python3
# -*- conding:utf-8 -*-
__author__ = 'mayi'

import csv

#讀取第二列的內容
with open("test.csv", "r", encoding = "utf-8") as f:
reader = csv.reader(f)
column = [row[1] for row in reader]

print(column)

得到:
['Name', 'mayi', 'jack', 'tom', 'rain']

注意從csv讀出的都是str類型。這種方法要事先知道列的序號,比如Name在第2列,而不能根據'Name'這個標題查詢。這時可以採用第二種方法:
第二種方法是使用DictReader,和reader函數類似,接收一個可迭代的對象,能返回一個生成器,但是返回的每一個單元格都放在一個字典的值內,而這個字典的鍵則是這個單元格的標題(即列頭)。用下面的代碼可以看到DictReader的結構:

# -*- conding:utf-8 -*-
__author__ = 'mayi'

import csv

#讀
with open("test.csv", "r", encoding = "utf-8") as f:
reader = csv.DictReader(f)
column = [row for row in reader]

print(column)

得到:
[{'No.': '1', 'Age': '18', 'Score': '99', 'Name': 'mayi'},
{'No.': '2', 'Age': '21', 'Score': '89', 'Name': 'jack'},
{'No.': '3', 'Age': '25', 'Score': '95', 'Name': 'tom'},
{'No.': '4', 'Age': '19', 'Score': '80', 'Name': 'rain'}]

如果我們想用DictReader讀取csv的某一列,就可以用列的標題查詢:

#!/usr/bin/python3
# -*- conding:utf-8 -*-
__author__ = 'mayi'

import csv

#讀取Name列的內容
with open("test.csv", "r", encoding = "utf-8") as f:
reader = csv.DictReader(f)
column = [row['Name'] for row in reader]
print(column)

得到:
['mayi', 'jack', 'tom', 'rain']

2.寫文件
讀文件時,我們把csv文件讀入列表中,寫文件時會把列表中的元素寫入到csv文件中。

#!/usr/bin/python3
# -*- conding:utf-8 -*-
__author__ = 'mayi'

import csv

#寫:追加
row = ['5', 'hanmeimei', '23', '81']
out = open("test.csv", "a", newline = "")
csv_writer = csv.writer(out, dialect = "excel")
csv_writer.writerow(row)

得到:

『貳』 1 如何用Python導入Excel以及csv數據集

Excel是一個二進制文件,它保存有關工作簿中所有工作表的信息

CSV代表Comma Separated Values 。這是一個純文本格式,用逗號分隔一系列值

Excel不僅可以存儲數據,還可以對數據進行操作

CSV文件只是一個文本文件,它存儲數據,但不包含格式,公式,宏等。它也被稱為平面文件

Excel是一個電子表格,將文件保存為自己的專有格式,即xls或xlsx

CSV是將表格信息保存為擴展名為.csv的分隔文本文件的格式

保存在excel中的文件不能被文本編輯器打開或編輯

CSV文件可以通過文本編輯器(如記事本)打開或編輯

excel中會有若干個表單,每個表單都會這些屬性: 

行數(nrows) 列數(ncols) 名稱(name) 索引(number) 

import xlrd //執行操作前需要導入xlrd庫 

#讀取文件 

excel = xlrd.open_workexcel("文件地址") //這里表格名稱為excel,文件的地址可以從文件的屬性中看到 

#讀取表格表單數量 

sheet_num= excel.nsheets // sheet_num為變數,其值為表格表單數量 

#讀取表格表單名稱 

sheet_name = excel.sheet_names() // sheet_name為變數,其值為表格表單名稱 

#如果想要看到上述兩個變數,可以使用print()函數將它們列印出來 

#想要讀取某個表單的數據,首先獲取表單 excel.sheet_by_index(0) 

//表單索引從0開始,獲取第一個表單對象 excel.sheet_by_name('xxx') 

// 獲取名為」xxx」的表單對象 excel.sheets() 

// 獲取所有的表單對象 獲取單元格的內容:使用cell_value 方法 這里有兩個參數:行號和列號,用來讀取指定的單元格內容。 

第一行的內容是:sheet.row_values(rowx=0) 

第一列的內容是:sheet.col_values(colx=0)

CSV是英文Comma Separate Values(逗號分隔值)的縮寫,文檔的內容是由 「,」 分隔的一列列的數據構成的。在python數據處理中也經常用到。

import csv //執行操作前需要導入csv庫 

#csv讀取 

遍歷其中數據 csv_file = csv.reader(open(『文件地址』,』r』)) for x in csv_file print(x)

『叄』 python生成csv文件一定要用vscode打開嗎

python生成csv文件一定要用vscode打開的,因為csv編輯的數據都是通過固定的數據格式進行生成的,只能用vscode軟體才能識別數據正常進行打開

『肆』 怎麼將Python的運行結果導出為csv格式

兄弟,python下面自帶了csv模塊,直接import調用就行了
將內存中的數據寫入到csv文件的話,直接open一個新文件,用csv下的writer方法就可以將數據寫入到csv本地文件

熱點內容
suftp 發布:2024-05-07 06:00:40 瀏覽:878
編程的tr 發布:2024-05-07 05:37:25 瀏覽:422
蘋果4s的數據怎麼備份到安卓上 發布:2024-05-07 05:37:15 瀏覽:818
安卓怎麼注冊電郵 發布:2024-05-07 05:23:49 瀏覽:714
怎麼看清被塗鴉的內容安卓手機 發布:2024-05-07 05:16:52 瀏覽:702
配置業務分類時主要考慮哪些原因 發布:2024-05-07 05:12:40 瀏覽:185
外網如何訪問內網ip 發布:2024-05-07 05:12:30 瀏覽:814
網易版有拔刀劍的伺服器叫什麼 發布:2024-05-07 04:56:35 瀏覽:752
中國好源碼 發布:2024-05-07 04:56:29 瀏覽:872
小兵的伺服器是什麼 發布:2024-05-07 04:55:46 瀏覽:186