python 读写 csv

67 阅读1分钟

python 写csv

一次性写入多个list

list 长度 必须相同


   #重写CSV
    dataframe = pd.DataFrame({'name':namelist,'cos_similarity':scorelist})
    #将DataFrame存储为csv,index表示是否显示行名,default=True
    dataframe.to_csv("asthetics.csv",index=False,sep=',')
    

一次写入一行

# a+ 是追加  w 重写
with open("mark1.6.csv","a+") as csvfile:  
    writer = csv.writer(csvfile)

    #先写入columns_name
    writer.writerow(["name","clipsocre"])
    #写入多行用writerows
    writer.writerows([[0,3]])

读取csv

# 方式1
data = pd.read_csv("mark1.6.csv")

# 方式2
def read_csv():
    path  = "/home/alex/altclip_CAOD/mark1.6.csv"
    
    with open(path,"r") as f:
        
        csv_read = csv.reader(f)
        
        for line in csv_read:
            print (line)
            
# 读每一行每一列的具体内容
mport csv
 
filename='/home/alex/altclip_CAOD/mark1.62.csv'

name = []
score =[]

with open(filename) as csvfile:
    csv_reader = csv.reader(csvfile)  # 使用csv.reader读取csvfile中的文件
    
    header = next(csv_reader)        # 读取第一行每一列的标题
    print(header)
    
    for row in csv_reader:  
        
        name =row[0]
        score =row[1]
        
        print(row[0])
        print(row[1])                  
        print()
        

# 方式3


```python
    
    import pandas as pd
    data = pd.read_csv(r'parttest.csv',sep=',',header='infer',usecols=[5])
    array=data.values[0::,0::] #读取全部行,全部列
    print(array[]) #array是数组形式存储,顺序与data读取的数据顺序格式相同

附加:python利用open打开文件的方式

  • w:以写方式打开,
  • a:以追加模式打开 (从 EOF 开始, 必要时创建新文件)
  • r+:以读写模式打开
  • w+:以读写模式打开 (参见 w )
  • a+:以读写模式打开 (参见 a )
  • rb:以二进制读模式打开
  • wb:以二进制写模式打开 (参见 w )
  • ab:以二进制追加模式打开 (参见 a )
  • rb+:以二进制读写模式打开 (参见 r+ )
  • wb+:以二进制读写模式打开 (参见 w+ )
  • ab+:以二进制读写模式打开 (参见 a+ )