Python 如何删除csv文件中[2]列每行分隔符(.)后的符号?

Python 如何删除csv文件中[2]列每行分隔符(.)后的符号?,python,csv,Python,Csv,如何删除csv文件中[2]列每行分隔符(.)后的符号 文件结构: Date, Time, Open, High, Low, Last, Volume, NumberOfTrades, BidVolume, AskVolume 2019/12/30, 14:38:01, 3233.00, 3233.00, 3230.00, 3233.00, 1, 1, 0, 1 2019/12/30, 14:38:01.1, 3233.25, 3233.00, 3230.00, 3233.25, 2, 1, 0,

如何删除csv文件中[2]列每行分隔符(.)后的符号

文件结构:

Date, Time, Open, High, Low, Last, Volume, NumberOfTrades, BidVolume, AskVolume
2019/12/30, 14:38:01, 3233.00, 3233.00, 3230.00, 3233.00, 1, 1, 0, 1
2019/12/30, 14:38:01.1, 3233.25, 3233.00, 3230.00, 3233.25, 2, 1, 0, 2
2019/12/30, 14:43:13, 3230.00, 3230.25, 3230.00, 3230.00, 1, 1, 1, 0
2019/12/30, 15:12:47, 3224.50, 3224.75, 3224.50, 3224.50, 2, 1, 2, 0
2019/12/30, 15:12:47.1, 3224.50, 3224.75, 3224.50, 3224.50, 2, 1, 2, 0
2019/12/30, 15:12:47.2, 3224.50, 3225.50, 3224.50, 3224.50, 2, 1, 2, 0
2019/12/30, 15:12:58, 3224.50, 3225.50, 3224.50, 3224.50, 2, 1, 2, 0
2019/12/30, 15:13:14, 3224.50, 3224.75, 3224.50, 3224.50, 2, 1, 2, 0
2019/12/30, 15:13:14.1, 3224.50, 3225.25, 3224.50, 3224.50, 2, 1, 2, 0
任务是删除第二列“时间”中的毫秒(.1、.2、.33、.444等)

文件非常大,因此应通过创建其他.csv文件进行修改,而不是更新原始文件

import csv
f = open('Book1.csv')
csv_f = csv.reader(f)

for row in csv_f:
我被困在这里了

我试过了,但不是解决办法

row[2] = row[2][:-4] 

提前感谢您的帮助

这可以通过
split()

编辑:将第[2]行更改为第[1]行,问题是错误的,我使用了问题的流程

行[1]=行[1]。拆分(“.”[0]

使用pandas dataframe读取文件,然后使用以下命令:

import pandas as pd

df = pd.read_csv('Book1.csv')
df['Time'] = df['Time'].str.split('.').str[0]
如果您愿意使用,您可以在以下内容中使用
转换器
参数:


检查引用提醒Python使用零索引,因此时间实际上在
行[1]
中。OP没有使用Pandas,因此如果您要建议Pandas解决方案,您应该提供使其工作所需的其他代码行,并提供解释。问题没有标记Pandas。这是一个仅代码响应,不使用OP的模块。请编辑它,并解释为什么您认为OP应该在这里使用熊猫,或者删除它。
尝试除此之外将是多余的
“14:38:01”。拆分(“.”=>['14:38:01']
“14:38:01.01”。拆分(“.”=>['14:38:01','01']
似乎工作正常!谢谢!留给我的唯一问题是如何将其保存为.csv而不重写原始文件。
import pandas as pd

df = pd.read_csv('Book1.csv')
df['Time'] = df['Time'].str.split('.').str[0]
>>> df = pd.read_csv('book1.csv', converters={' Time': lambda x:x[:9]})

         Date       Time     Open  ...   NumberOfTrades   BidVolume   AskVolume
0  2019/12/30   14:38:01  3233.00  ...                1           0           1
1  2019/12/30   14:38:01  3233.25  ...                1           0           2
2  2019/12/30   14:43:13  3230.00  ...                1           1           0
3  2019/12/30   15:12:47  3224.50  ...                1           2           0
4  2019/12/30   15:12:47  3224.50  ...                1           2           0
5  2019/12/30   15:12:47  3224.50  ...                1           2           0
6  2019/12/30   15:12:58  3224.50  ...                1           2           0
7  2019/12/30   15:13:14  3224.50  ...                1           2           0
8  2019/12/30   15:13:14  3224.50  ...                1           2           0

[9 rows x 10 columns]