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

python如何讀取指定csv單元格

 更新時間:2024年02月04日 09:38:14   作者:13572025090  
這篇文章主要介紹了python如何讀取指定csv單元格方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

python讀取指定csv單元格

可以使用Python的pandas庫讀取csv文件中的指定單元格。

例如,假設(shè)有一個名為"data.csv"的文件,要讀取其第2行第3列的單元格,可以這樣做:

import pandas as pd
 
# 讀取csv文件
df = pd.read_csv("data.csv")
 
# 讀取指定單元格
value = df.iloc[1, 2]
 
print(value)

其中,iloc函數(shù)用于讀取指定行、列的單元格。

第一個參數(shù)是行索引,第二個參數(shù)是列索引。

對csv文件指定單元格的處理

CSV文件:Comma-Separated Values,逗號分隔值或者字符分割值,其文件以純文本的形式存儲表格數(shù)據(jù)。用文本文件和Excel都可以打開CSV文件。

下面是分別用excel和記事本打開的兩個csv文件。 

規(guī)范的t.csv

圖1

非規(guī)范的test.csv

注意: 

  • 如果單元格內(nèi)容中存在逗號,那么這個單元格內(nèi)容會用雙引號分隔出來。如圖中test.csv中第一個單元格。
  • 如果單元格內(nèi)容中存在雙引號,那在記事本打開同樣會多加引號,具體怎么加這里csv的處理規(guī)則好像有點奇怪,目前我也還沒完全搞明白。

一般的csv文件都有規(guī)范的表頭和對應(yīng)的每行數(shù)據(jù),前兩張圖片中打開的都是規(guī)范的csv文件,后兩張圖片打開的是非規(guī)范的csv文件,而Python的csv庫中也只有對csv文件整行的操作,并沒有像excel一樣可以對任意單元格操作,所以要對非規(guī)范的csv文件操作任意單元格是困難的。

本文實現(xiàn)了對非規(guī)范的csv文件的操作。 

思路:csv–>二維列表–>通過列表定位單元格–>列表重寫成csv

代碼如下:

import csv


class HandleCsv:
    # 定義存放csv內(nèi)容的list
    csv_list = []

    def __init__(self, filename):
        self.filename = filename
        with open(self.filename)as fp:
            self.csv_list = list(csv.reader(fp))
            print(self.csv_list)

    # 在第N行第M列空白單元格處修改內(nèi)容
    def modify(self, n, m, value):
        self.csv_list[n - 1][m - 1] = value

    # 插入第N行
    def insert_row(self, n):
        self.csv_list.insert(n - 1, [])

    # 在第N行第M列單元格插入
    def insert_col(self, n, m, value):
        # 如果該單元格左邊的單元格為空,那么先對左邊的單元格寫入空格
        if len(self.csv_list[n - 1]) < m:
            if len(self.csv_list[n - 1]) == m - 1:
                self.csv_list[n - 1].append(value)
            else:
                for i in range(len(self.csv_list[n - 1]), m - 1):
                    self.csv_list[n - 1].append('')
                self.csv_list[n - 1].append(value)
        else:
            self.modify(n, m, value)

    # 刪除第N行
    def del_row(self, n):
        del self.csv_list[n - 1]

    # 獲取第n行第m列單元格內(nèi)容
    def get_value(self, n, m):
        return self.csv_list[n - 1][m - 1]

    def list2csv(self, file_path):
        try:
            fp = open(file_path, 'w')
            for items in self.csv_list:
                for i in range(len(items)):
                    # 若元素中含有逗號,那么需要加雙引號
                    if items[i].find(',') != -1:
                        fp.write('\"')
                        fp.write(items[i])
                        fp.write('\"')
                    else:
                        fp.write(items[i])
                    # 最后一個元素不用加逗號
                    if i < len(items) - 1:
                        fp.write(',')
                fp.write('\n')
        except Exception as e:
            print(e)


if __name__ == '__main__':
    h_csv = HandleCsv(u'test.csv')
    # 在第4行處插入一行
    h_csv.insert_row(4)
    # 在第4行第4列處插入單元格
    h_csv.insert_col(4, 4, '第4行,第4列')
    h_csv.list2csv(u'test.csv')

運行程序前的csv:

運行程序后的csv:

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • pandas如何將表中的字符串轉(zhuǎn)成數(shù)值型

    pandas如何將表中的字符串轉(zhuǎn)成數(shù)值型

    在用pd.read_csv讀數(shù)據(jù)時,將要轉(zhuǎn)換數(shù)據(jù)類型的列名和類型名構(gòu)成字典,傳給dtype,怎么轉(zhuǎn)換呢,下面小編給大家分享下pandas將表中的字符串轉(zhuǎn)成數(shù)值型,感興趣的朋友一起看看吧
    2023-02-02
  • python實現(xiàn)可下載音樂的音樂播放器

    python實現(xiàn)可下載音樂的音樂播放器

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)可下載音樂的音樂播放器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • Python流行ORM框架sqlalchemy安裝與使用教程

    Python流行ORM框架sqlalchemy安裝與使用教程

    這篇文章主要介紹了Python流行ORM框架sqlalchemy安裝與使用,結(jié)合具體實例形式分析了sqlalchemy的安裝及ORM映射、查詢等相關(guān)操作技巧,需要的朋友可以參考下
    2019-06-06
  • 如何使用python爬蟲爬取要登陸的網(wǎng)站

    如何使用python爬蟲爬取要登陸的網(wǎng)站

    這篇文章主要介紹了如何使用python爬蟲爬取要登陸的網(wǎng)站,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • django admin實現(xiàn)動態(tài)多選框表單的示例代碼

    django admin實現(xiàn)動態(tài)多選框表單的示例代碼

    借助django-admin,可以快速得到CRUD界面,但若需要創(chuàng)建多選標(biāo)簽字段時,需要對表單進(jìn)行調(diào)整,本文通過示例代碼給大家介紹django admin多選框表單的實現(xiàn)方法,感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • python使用ctypes調(diào)用擴(kuò)展模塊的實例方法

    python使用ctypes調(diào)用擴(kuò)展模塊的實例方法

    在本篇文章里小編給大家整理的是一篇關(guān)于python使用ctypes調(diào)用擴(kuò)展模塊的實例方法內(nèi)容,需要的朋友們可以學(xué)習(xí)參考下。
    2020-01-01
  • python在不同條件下的輸入與輸出

    python在不同條件下的輸入與輸出

    在本篇文章里小編給大家整理的是關(guān)于python在不同條件下的輸入與輸出,有需要的朋友們可以學(xué)習(xí)下。
    2020-02-02
  • Python Pytorch gpu 分析環(huán)境配置

    Python Pytorch gpu 分析環(huán)境配置

    Pytorch是目前最火的深度學(xué)習(xí)框架之一,目前也支持了pytorch的GPU加速,所以我就想著,在這兩個電腦上裝個Pytorch,這篇文章主要介紹了Python Pytorch(gpu)分析環(huán)境配置,需要的朋友可以參考下
    2023-04-04
  • Python利用wxPython制作股票價格查詢工具

    Python利用wxPython制作股票價格查詢工具

    在當(dāng)今信息時代,金融市場是一個引人注目的話題。本文將介紹如何使用 Yahoo Finance API、yfinance 模塊和 wxPython 庫來創(chuàng)建一個簡單的全球股市實時價格查詢工具,希望大家能夠喜歡
    2023-05-05
  • 編寫簡單的Python程序來判斷文本的語種

    編寫簡單的Python程序來判斷文本的語種

    這篇文章主要介紹了編寫簡單的Python程序來判斷語種,代碼非常簡單,主要用到了langid工具包,需要的朋友可以參考下
    2015-04-04

最新評論

南安市| 漳平市| 梁山县| 金华市| 湛江市| 黄大仙区| 石嘴山市| 鸡东县| 沂南县| 辉县市| 遂溪县| 南丰县| 沙洋县| 开化县| 阳谷县| 岳西县| 新沂市| 南陵县| 于田县| 通许县| 郁南县| 绍兴市| 大连市| 安国市| 临邑县| 永年县| 唐河县| 沙河市| 福州市| 漾濞| 马龙县| 饶河县| 革吉县| 额尔古纳市| 奎屯市| 勐海县| 玛曲县| 龙泉市| 顺平县| 开封县| 民勤县|