Python 如何在csv文件中写入和附加数据并将其存储在列表中
我在python代码中创建了csv文件,并将在其中添加下一个数据,但错误正在发生Python 如何在csv文件中写入和附加数据并将其存储在列表中,python,list,csv,append,Python,List,Csv,Append,我在python代码中创建了csv文件,并将在其中添加下一个数据,但错误正在发生 io.UnsupportedOperation: not readable 我试过的代码是: df.to_csv('timepass.csv', index=False) with open(r'timepass.csv', 'a') as f: writer = csv.reader(f) your_list = list(writer) print(your_lis
io.UnsupportedOperation: not readable
我试过的代码是:
df.to_csv('timepass.csv', index=False)
with open(r'timepass.csv', 'a') as f:
writer = csv.reader(f)
your_list = list(writer)
print(your_list)
希望附加下一个数据并存储在同一个csv文件中。使csv文件同时具有以前和当前数据。
所以请帮我找出答案。。
先谢谢你 试试看:
with open(r'timepass.csv', 'r') as f:
reader = list(csv.reader(f))
print(reader)
在这里,您以r
的形式打开文件,这意味着只读,并使用list(csv.reader(f))
将列表内容分配给reader
。您以前的代码a
仅在文档中描述的位置打开文件进行附加:
“a”打开要追加的文件;写入文件的任何数据都是
自动添加到末尾
并且不支持read()
如果您想从其他列表向csv文件追加数据,请使用with open asa
和writer
方法
with open('lake.csv','a') as f:
csv.writer(f,[1,2,3]) #dummy list [1,2,3]
或者直接从新数据框中的pandas.DataFrame.to_csv
方法,使用header=False
以避免附加头:
df.to_csv('timepass.csv', index=False)
df_new.to_csv(r'timepass.csv', mode='a', header=False) #once you have updated your dataframe, you can directly append it to the same csv file
尝试:
在这里,您以r
的形式打开文件,这意味着只读,并使用list(csv.reader(f))
将列表内容分配给reader
。您以前的代码a
仅在文档中描述的位置打开文件进行附加:
“a”打开要追加的文件;写入文件的任何数据都是
自动添加到末尾
并且不支持read()
如果您想从其他列表向csv文件追加数据,请使用with open asa
和writer
方法
with open('lake.csv','a') as f:
csv.writer(f,[1,2,3]) #dummy list [1,2,3]
或者直接从新数据框中的pandas.DataFrame.to_csv
方法,使用header=False
以避免附加头:
df.to_csv('timepass.csv', index=False)
df_new.to_csv(r'timepass.csv', mode='a', header=False) #once you have updated your dataframe, you can directly append it to the same csv file
它非常简单,请尝试以下方法:
import pandas as pd
df = pd.read_excel("NSTT.xlsx","Sheet1") #reading Excel
print(df) #Printing data frame
df.to_excel("new.xlsx") #Writing Dataframe into New Excel file
现在,如果要在同一文件中追加数据,请使用
df.to_excel("new.xlsx","a")
无需添加列表,因为您可以直接访问与数据框列表相同的数据,只需定义位置。非常简单,只需尝试以下操作:
import pandas as pd
df = pd.read_excel("NSTT.xlsx","Sheet1") #reading Excel
print(df) #Printing data frame
df.to_excel("new.xlsx") #Writing Dataframe into New Excel file
现在,如果要在同一文件中追加数据,请使用
df.to_excel("new.xlsx","a")
无需添加列表,因为您可以直接访问与数据框列表相同的数据,只需定义位置。您可以使用pandas快速添加两个csv
import pandas as pd
dataframe1=pd.read_csv("a.csv")
dataframe2=pd.read_csv("b.csv")
dataframe1=dataframe1.append(dataframe2)
dataframe1=dataframe1.reset_index(drop=True)
dataframe1.to_csv("a.csv")
可以使用pandas快速附加两个csv
import pandas as pd
dataframe1=pd.read_csv("a.csv")
dataframe2=pd.read_csv("b.csv")
dataframe1=dataframe1.append(dataframe2)
dataframe1=dataframe1.reset_index(drop=True)
dataframe1.to_csv("a.csv")
请查收
您可以在python中使用pandas来读取和写入csv:
import pandas as pd
df = pd.read_csv("csv file")
print(df)
请查收
您可以在python中使用pandas来读取和写入csv:
import pandas as pd
df = pd.read_csv("csv file")
print(df)
嗨,欢迎来到SO!如果有人的答案解决了您的问题,您可能希望使用大复选框将其作为答案接受,因为它也有助于并激励社区。出现错误,先生……属性错误:模块“csv”没有属性“ReadLine”我为
csv
模块编辑了我的答案。您好,欢迎使用SO!如果有人的答案解决了您的问题,您可能希望使用大复选框将其作为答案接受,因为它也有助于并激励社区。出现错误,先生……属性错误:模块“csv”没有属性“ReadLine”我为csv
模块编辑了我的答案。顺便说一句。错误为:AttributeError:模块“csv”没有属性“readlines”。还希望以列表格式存储数据。正如我在问题中提到的。道歉readlines()
不适用于csv
模块。您可以使用reader
。将open('lake.csv','a')作为l:reader=csv.writer(l[1,2,3])#虚拟列表[1,2,3]输出为:csv.writer
是用于写入的对象。请参阅编辑后的回复。您正在编写的列表是虚拟列表。如果你正在写,如果你已经知道你在写什么,这是有意义的。在这个例子中,它是一个伪列表。df.to_csv('timepass.csv',index=False)df_new.to_csv(r'timepass.csv',mode='a',header=False),这样你就可以写两次文件,而不是按你的方式附加。错误为:AttributeError:模块“csv”没有属性“readlines”。还希望以列表格式存储数据。正如我在问题中提到的。道歉readlines()
不适用于csv
模块。您可以使用reader
。将open('lake.csv','a')作为l:reader=csv.writer(l[1,2,3])#虚拟列表[1,2,3]输出为:csv.writer
是用于写入的对象。请参阅编辑后的回复。您正在编写的列表是虚拟列表。如果你正在写,如果你已经知道你在写什么,这是有意义的。在这个例子中,它是一个虚拟列表。df.to_csv('timepass.csv',index=False)df_new.to_csv(r'timepass.csv',mode='a',header=False),这样你就可以写两次文件了,不需要添加csv文件,不需要csv文件,不需要,以csvby方式覆盖数据,以csvby方式覆盖数据csv@royal如果将路径替换为dataframe1.to_csv(“a,csv”),则a.csv将成为包含所有数据的主csv文件,如果要添加任何其他csv文件,则只需使用新文件更改b.csv即可name@royal如果将路径替换为dataframe1.to_csv(“a,csv”)然后a.csv成为包含所有数据的主csv文件,如果您有任何其他csv文件要添加,只需使用新文件名更改b.csv即可