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

Python中CSV文件(逗號分割)實戰(zhàn)操作指南

 更新時間:2022年07月04日 12:26:07   作者:Wielun  
CSV文件默認以英文逗號做為列分隔符,換行符作為行分隔符,下面這篇文章主要給大家介紹了關(guān)于Python中CSV文件(逗號分割)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下

一、csv文件介紹

1、csv文件簡介

逗號分隔值(Comma-Separated Values,CSV,有時也稱為字符分隔值,因為分隔字符也可以不是逗號),其文件以純文本形式存儲表格數(shù)據(jù)(數(shù)字和文本)。純文本意味著該文件是一個字符序列,不含必須像二進制數(shù)字那樣被解讀的數(shù)據(jù)。CSV文件由任意數(shù)目的記錄組成,記錄間以某種換行符分隔;每條記錄由字段組成,字段間的分隔符是其它字符或字符串,最常見的是逗號或制表符。通常,所有記錄都有完全相同的字段序列。通常都是純文本文件。

2、為什么要使用csv文件

在Linux中我們可以通過命令在數(shù)據(jù)庫中把表導(dǎo)出來為csv結(jié)尾的文件,其實就是以逗號分割分txt文件,此文件我們可以在windows中打開并且為表格的形式,方便我們進行查看與再次操作。

eg:

MariaDB [test]> select * from 表名 into outfile "/tmp/test.csv" fields terminated by ","; 

二、csv文件查看

注意:這里我是把csv文件和python代碼都放在同級目錄,否則要指定路徑?。?!

1、測試文件創(chuàng)建

(1)這里我們以windows中的csv文件來做實驗

(2)我們可以選中內(nèi)容復(fù)制進去,也可以上傳到linux中,這里我們選擇前者

[root@python _test]# vim test.csv                      ###可以發(fā)現(xiàn)復(fù)制進去的是以空格為分隔符
id      username        passwd  age
1       dream1  123     21
2       dream2  456     22
3       dream3  789     23

### 把空格替換為逗號
[root@python _test]# sed -i 's/\s\+/,/g' test.csv

2、查看csv文件(列表)

(1)讀出結(jié)果

[root@python _test]# vim _test.py 
#!/usr/bin/env python
#coding:utf-8
import csv
with open('test.csv', encoding="utf-8") as f:
    reader = csv.reader(f)
    print(reader)
    print(list(reader))

### 查看結(jié)果
[root@python _test]# python _test.py
<_csv.reader object at 0x7f54d9a01eb8>
[['id', 'username', 'passwd', 'age'], ['1', 'dream1', '123', '21'], ['2', 'dream2', '456', '22'], ['3', 'dream3', '789', '23']]

(2)遍歷(從第一行讀?。?/p>

[root@python _test]# vim _test.py 
#!/usr/bin/env python
#coding:utf-8
import csv
with open('test.csv', encoding="utf-8") as f:
    reader = csv.reader(f)
    for i in reader:
        print(reader.line_num, i)
 
 ### 查看結(jié)果
[root@python _test]# python _test.py
1 ['id', 'username', 'passwd', 'age']
2 ['1', 'dream1', '123', '21']
3 ['2', 'dream2', '456', '22']
4 ['3', 'dream3', '789', '23']

(2)遍歷(從第二行讀?。?/p>

[root@python _test]# vim _test.py
#!/usr/bin/env python
#coding:utf-8
import csv
with open('test.csv', encoding="utf-8") as f:
    reader = csv.reader(f)
    ### 這個就是我們得表頭
    next(reader)
    for i in reader:
        print(reader.line_num, i)
        
### 查看結(jié)果
[root@python _test]# python _test.py    
2 ['1', 'dream1', '123', '21']
3 ['2', 'dream2', '456', '22']
4 ['3', 'dream3', '789', '23']

3、查看csv文件(字典)

(1)查看

[root@python _test]# vim _test.py
#!/usr/bin/env python
#coding:utf-8
import csv
with open('test.csv', encoding="utf-8") as f:
    reader = csv.DictReader(f)
    ### 表頭
    print (reader.fieldnames)
    print (reader,type(reader))
    for i in reader:
        print (i)
        
### 查看結(jié)果
[root@python _test]# python _test.py
['id',  'username',  'passwd',  'age']
<csv.DictReader object at 0x7f3b02213a20> <class 'csv.DictReader'>
OrderedDict([('id', '1'), ('username', 'dream1'), ('passwd', '123'), ('age', '21')])
OrderedDict([('id', '2'), ('username', 'dream2'), ('passwd', '456'), ('age', '22')])
OrderedDict([('id', '3'), ('username', 'dream3'), ('passwd', '789'), ('age', '23')])

(2)查看第一列(id)

優(yōu)點:我們不知道表頭在具體那列,我們可以通過表頭名來獲取整列數(shù)據(jù),即我們可以隨便調(diào)整順序也不會影響我們的數(shù)據(jù)讀?。。?!

[root@python _test]# vim _test.py
#!/usr/bin/env python
#coding:utf-8
import csv
with open('test.csv', encoding="utf-8") as f:
    reader = csv.DictReader(f)
    for i in reader:
        print (i['id'])
        
### 查看結(jié)果
[root@python _test]# python _test.py
1
2
3

4、寫入文件(列表)

[root@python _test]# vim _test.py
#!/usr/bin/env python
#coding:utf-8
import csv
li = [["id","user","性別"],["1","dreamya1","男"],["2","dreamya2","女"]]
with open('user.csv', 'w', newline='') as f:
    writer = csv.writer(f)
    for i in li:
        writer.writerow(i)

### 查看結(jié)果
[root@python _test]# python _test.py 
[root@python _test]# cat user.csv 
id,user,性別
1,dreamya1,男
2,dreamya2,女

下載到windows中查看:

[root@python _test]# sz user.csv 

5、寫入文件(字典)

[root@python _test]# vim _test.py
import csv
#coding:utf-8
headers = ['id', 'username','passwd']
li = [{'id':'1','username':'dream1','passwd':'123'},
        {'id':'2','username':'dream2','passwd':'456'},
        ]
        
with open('user.csv', 'w', newline='') as f:
    ### 表頭傳入
    writer = csv.DictWriter(f, headers)
    writer.writeheader()    
    ### 一行一行寫入
    for i in li:
        writer.writerow(i)
        
    ### 直接把li寫入(多行)
    writer.writerows(li)

### 查看結(jié)果
[root@python _test]# python _test.py
[root@python _test]# cat user.csv 
id,username,passwd
1,dream1,123
2,dream2,456
1,dream1,123
2,dream2,456

windows中查看:

[root@python _test]# sz user.csv 

總結(jié) 

到此這篇關(guān)于Python中CSV文件(逗號分割)的文章就介紹到這了,更多相關(guān)Python CSV文件逗號分割內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python3.7中安裝paddleocr及paddlepaddle包的多種方法

    python3.7中安裝paddleocr及paddlepaddle包的多種方法

    這篇文章主要介紹了python3.7中安裝paddleocr及paddlepaddle包,本文通過多種方法給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • Python+OpenCV實現(xiàn)圖片及視頻中選定區(qū)域顏色識別

    Python+OpenCV實現(xiàn)圖片及視頻中選定區(qū)域顏色識別

    這篇文章主要為大家詳細介紹了如何利用Python+OpenCV實現(xiàn)圖片及視頻中選定區(qū)域顏色識別功能,文中的示例代碼講解詳細,感興趣的可以了解一下
    2022-07-07
  • python在非root權(quán)限下的安裝方法

    python在非root權(quán)限下的安裝方法

    下面小編就為大家分享一篇python在非root權(quán)限下的安裝方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 淺談Django2.0 加xadmin踩的坑

    淺談Django2.0 加xadmin踩的坑

    今天小編就為大家分享一篇淺談Django2.0 加xadmin踩的坑,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • python實現(xiàn)楊氏矩陣查找

    python實現(xiàn)楊氏矩陣查找

    這篇文章主要為大家詳細介紹了Python實現(xiàn)楊氏矩陣查找,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • Python可視化之pyechart庫使用詳解

    Python可視化之pyechart庫使用詳解

    這篇文章主要介紹了Python可視化之pyechart庫使用詳解,Pyecharts 提供了一個簡單而直觀的 API 接口,使得使用者無需了解復(fù)雜的 JavaScript 語法,即可通過 Python 代碼實現(xiàn)高度定制化的圖表設(shè)計,需要的朋友可以參考下
    2023-12-12
  • Python注釋詳解

    Python注釋詳解

    下面小編就為大家?guī)硪黄狿ython注釋詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • 深入理解python協(xié)程

    深入理解python協(xié)程

    協(xié)程又稱為微線程,協(xié)程是一種用戶態(tài)的輕量級線程,它是實現(xiàn)多任務(wù)的另一種方式,只不過是比線程更小的執(zhí)行單元。因為它自帶CPU的上下文,這樣只要在合適的時機,我們可以把一個協(xié)程切換到另一個協(xié)程
    2021-06-06
  • Python SQLite3簡介

    Python SQLite3簡介

    這篇文章主要為大家詳細介紹了Python SQLite3的簡單介紹以及使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • python使用XPath解析數(shù)據(jù)爬取起點小說網(wǎng)數(shù)據(jù)

    python使用XPath解析數(shù)據(jù)爬取起點小說網(wǎng)數(shù)據(jù)

    這篇文章主要介紹了python使用XPath解析數(shù)據(jù)爬取起點小說網(wǎng)數(shù)據(jù),幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-04-04

最新評論

昭苏县| 海口市| 盐亭县| 本溪市| 腾冲县| 旺苍县| 铁岭市| 澳门| 泸西县| 阳信县| 共和县| 措勤县| 长兴县| 沈丘县| 门头沟区| 甘南县| 上林县| 思南县| 焉耆| 肥城市| 施秉县| 黔江区| 内乡县| 揭东县| 韩城市| 贡山| 车险| 涿鹿县| 绵竹市| 绥棱县| 绩溪县| 井冈山市| 泸定县| 金坛市| 昔阳县| 如皋市| 周至县| 来安县| 贺州市| 宜宾市| 确山县|