- import os
- import csv
- import re
- file_path =r'C:\Users\DKTE-assist2009.csv'
- file_name =r'C:\Users\remove-DKTE-assist2009.csv'
- if os.path.exists(file_path):
- print("文件存在")
-
- with open(file_path, 'r', newline='') as file:
- reader = csv.reader(file)
-
- # 一次性读取整个文件内容并存储在一个列表中
- data = list(reader)
- pattern = r'tensor\(([\d.]+),'
-
- for i in range(1,len(data)):
- for j in range(21):
- match = re.search(pattern, data[i][j])
- data[i][j]=float(match.group(1))
- with open(file_name, 'a', newline='') as file:
- writer = csv.writer(file)
- writer.writerows(data)
r'C:\Users\DKTE-assist2009.csv'
"r" 表示这是一个原始字符串,其中包含了文件路径。在处理文件路径等可能包含反斜杠符号的字符串时,使用原始字符串是一种良好的做法,可以避免潜在的问题。
如果是逐行写入文件的话:就是writerows和writerow的区别
- import os
- import csv
- import re
- file_path =r'C:\Users\DKTE-assist2009.csv'
- file_name =r'C:\Users\remove-DKTE-assist2009.csv'
- if os.path.exists(file_path):
- print("文件存在")
-
- with open(file_path, 'r', newline='') as file:
- reader = csv.reader(file)
-
- # 一次性读取整个文件内容并存储在一个列表中
- data = list(reader)
- with open(file_name, 'w', newline='') as file:
- writer = csv.writer(file)
- writer.writerow(data[0])
-
- pattern = r'tensor\(([\d.]+),'
-
- for i in range(1,len(data)):
- for j in range(21):
- match = re.search(pattern, data[i][j])
- data[i][j]=float(match.group(1))
- with open(file_name, 'a', newline='') as file:
- writer = csv.writer(file)
- writer.writerow(data[i])