def deletedata(uniquecode):
with open('Stallingsbestand.csv', 'r+') as CSV:
writer = csv.writer(CSV, delimiter=';')
for row in CSV:
if uniquecode in row:
writer.writerow((uniquecode, ''))
Stallingsbestand.csv
中的由看起来像这样的行组成:
uniquecode;Date_of_last_opening_a_function
我希望能够删除上次开放的日期,并在那里保留唯一的代码。
(在行尾附加False
也可以,但是我不知道哪个更容易)
我认为仅覆盖该行是最简单的,但我无法使其正常工作。有谁知道该怎么做?
答案 0 :(得分:1)
您要将文件重命名为Stallingsbestand.old
,并写出新版本的Stallingsbestand.csv
。一种执行此操作的方法是,在循环中将修改过的行从csv.reader
复制(有时)从csv.writer
复制到pandas.read_csv()
,类似于您当前的代码。
您可能会发现,使用pandas.to_csv()
创建一个内存中数据帧,更改其行之一,然后使用C:\Python\Python37-32\python.exe C:\Coding\Codecademy\Python\one.py
保留它更为方便。
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_csv.html