最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python中csv文件創(chuàng)建、讀取及修改等操作實例

 更新時間:2022年05月11日 14:25:39   作者:m0_46483236  
很多程序在處理數(shù)據(jù)時都會碰到csv這種格式的文件,下面這篇文章主要給大家介紹了關(guān)于python中csv文件創(chuàng)建、讀取及修改等操作的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

1. python中創(chuàng)建新的csv文件

(1). 使用csv.writer()創(chuàng)建:

代碼如下:

import csv
 
headers = ['學號','姓名','分數(shù)']
rows = [('202001','張三','98'),
        ('202002','李四','95'),
        ('202003','王五','92')]
with open('score.csv','w',encoding='utf8',newline='') as f :
    writer = csv.writer(f)
    writer.writerow(headers)
    writer.writerows(rows)

會在相同路徑下生成一個score.csv文件 

 VScode中打開如下:

 用excel打開如下:

可以發(fā)現(xiàn),逗號','在csv文件中代表換格。除此以外,還有'\n'在csv文件中代表換行。 

(2). 使用csv.Dictwriter()創(chuàng)建:

代碼如下:

import csv
 
headers = ['學號','姓名','分數(shù)']
rows = [{'學號':'202001','姓名':'張三','分數(shù)':'98'},
        {'學號':'202002','姓名':'李四','分數(shù)':'95'},
        {'學號':'202003','姓名':'王五','分數(shù)':'92'}]
with open('score.csv','w',encoding='utf8',newline='') as f :
    writer = csv.DictWriter(f,headers)
    writer.writeheader()
    writer.writerows(rows)

會發(fā)現(xiàn)結(jié)果和方式1相同。

(3). 使用writelines()創(chuàng)建:

import csv
 
headers = ['學號,姓名,分數(shù)','\n']
csv = ['202001,張三,98','\n',
        '202002,李四,95','\n',
        '202003,王五,92']
with open('score.csv', 'w',encoding='utf8',newline='') as f:
    f.writelines(headers) # write() argument must be str, not tuple
    f.writelines(csv)

會發(fā)現(xiàn)結(jié)果和方式1、方式2相同。 

 綜合上述三種方式,csv文件的創(chuàng)建靈活多樣,主要依賴于自己創(chuàng)建的原來數(shù)據(jù)的存放形式,比如方式1、2中的rows和方式3中的csv,以此選擇適合的創(chuàng)建csv文件的函數(shù)和方式。

實際示例(要靈活使用','、'\n'、append()等):

csv = []
for line in lines:
    scores = result[line[0]]
    for wav, scores in scores.items():
        # csv.append(line[0])
        # csv.append(wav)
        # csv.append(str(i) for i in scores)
        # csv.append('\n')
        #csv.append(','.join([wav] + [str(i) for i in scores] + '\n'))
        csv.append(line[0] +','+ wav )
        for i in scores:
            csv.append(','+ str(i))
        csv.append('\n')
with open('task3-result.csv', 'w') as f:
    f.writelines(csv)

2. python中讀取csv文件

原score.csv文件在excel中打開如下:

(1). 使用pandas.read_csv()讀取

代碼如下: 

import pandas as pd 
 
my_matrix = pd.read_csv('score.csv')#,header=None,index_col=None)
'''
header : int or list of ints, default ‘infer',指定行數(shù)用來作為列名,數(shù)據(jù)開始行數(shù)。如果文件中沒有列名,則默認為0,
index_col : int or sequence or False, default None,用作行索引的列編號或者列名
'''
print(my_matrix)
print(my_matrix.shape)

此時的輸出結(jié)果為:

若代碼參數(shù)改為:

my_matrix = pd.read_csv('score.csv',header=None,index_col=None)

結(jié)果如下:

若代碼參數(shù)改為:

my_matrix = pd.read_csv('score.csv',header=0,index_col=0)

結(jié)果如下:

為了方便后續(xù)分析,可以將數(shù)據(jù)類型改為np.array型,代碼如下:

import pandas as pd 
import numpy as np
 
my_matrix = pd.read_csv('score.csv')#,header=0,index_col=0)
my_matrix = np.array(my_matrix)
print(my_matrix)
print(my_matrix.shape)
print(my_matrix[0][0])

結(jié)果如下:

 (2). 使用csv.reader()進行讀取

代碼如下:

import csv
#讀取csv文件
with open('score.csv', "r",encoding='utf8',newline='') as f:
	reader = csv.reader(f)
	for row in reader:
		print(row)

結(jié)果如下:

如果想獲取某一列,可以通過指定的列標號來查詢,代碼如下:

for row in reader:
    print(row[0])

可以輸出某一指定的列 ,結(jié)果如下:

 (3). 使用csv.DictReader()進行讀取

代碼如下:

import csv
#讀取csv文件
with open('score.csv', "r",encoding='utf8',newline='') as f:
	reader = csv.DictReader(f)
	for row in reader:
		print(row)

結(jié)果如下:

如果想獲取某一列,可以通過指定的標題來查詢,代碼如下:

for row in reader:
	print(row['學號'])

可以輸出指定的某一列,結(jié)果如下:

總結(jié)

到此這篇關(guān)于python中csv文件創(chuàng)建、讀取及修改等操作的文章就介紹到這了,更多相關(guān)python csv文件創(chuàng)建讀取及修改內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python筆記(2)

    python筆記(2)

    python筆記,參考上一篇文章大家繼續(xù)
    2012-10-10
  • Python求字符串的長度示例代碼

    Python求字符串的長度示例代碼

    這篇文章主要介紹了Python求字符串的長度,求一個字符串的長度,在main函數(shù)中輸入字符串,并輸出其長度,文中給大家介紹了Python計算字符串長度的函數(shù),需要的朋友可以參考下
    2023-02-02
  • 利用pyproj將經(jīng)緯度投影為平面坐標以及地理坐標系背景知識解讀

    利用pyproj將經(jīng)緯度投影為平面坐標以及地理坐標系背景知識解讀

    這篇文章主要介紹了利用pyproj將經(jīng)緯度投影為平面坐標以及地理坐標系背景知識解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • python根據(jù)出生日期返回年齡的方法

    python根據(jù)出生日期返回年齡的方法

    這篇文章主要介紹了python根據(jù)出生日期返回年齡的方法,實例分析了Python時間操作的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-03-03
  • 深入了解Python 方法之類方法 & 靜態(tài)方法

    深入了解Python 方法之類方法 & 靜態(tài)方法

    這篇文章主要介紹了Python類方法 & 靜態(tài)方法的相關(guān)資料,幫助大家更好的理解和學習python,感興趣的朋友可以了解下
    2020-08-08
  • 24式加速你的Python(小結(jié))

    24式加速你的Python(小結(jié))

    這篇文章主要介紹了24式加速你的Python(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-06-06
  • python中yield的用法詳解

    python中yield的用法詳解

    這篇文章主要介紹了python中yield的用法詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • Django學習筆記之為Model添加Action

    Django學習筆記之為Model添加Action

    這篇文章主要介紹了Django給admin添加Action,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • Django 遷移、操作數(shù)據(jù)庫的方法

    Django 遷移、操作數(shù)據(jù)庫的方法

    這篇文章主要介紹了Django 遷移、操作數(shù)據(jù)庫的相關(guān)知識,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • python3.7將代碼打包成exe程序并添加圖標的方法

    python3.7將代碼打包成exe程序并添加圖標的方法

    這篇文章主要介紹了python3.7將代碼打包成exe程序并添加圖標的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-10-10

最新評論

安新县| 阳江市| 昌宁县| 金塔县| 育儿| 英德市| 东城区| 仙桃市| 会昌县| 元阳县| 化德县| 桃源县| 娄烦县| 仁怀市| 美姑县| 娱乐| 原阳县| 房产| 皋兰县| 台中市| 苏尼特左旗| 新野县| 靖州| 义乌市| 杭锦旗| 长武县| 巩留县| 佛教| 阿瓦提县| 璧山县| 丹江口市| 长丰县| 怀仁县| 虎林市| 南华县| 孙吴县| 宁远县| 海门市| 罗田县| 梨树县| 瑞丽市|