将txt文件的一部分写入csv时,每行每个字符都分配有一个新列

邦斯贾普

我编写了一个程序,该程序读取文本文件的所有行,然后找到该行的一部分,其中特定的字符串以Kbits结尾。对于发生这种情况的所有行,我将Kbits(它是一个int)之前的部分放到列表中,然后将其写入到csv文件中。问题是,当我写入csv文件时,会将Int拆分,并将每个数字分配给csv文件中的新列。我有一个想法与我的打字方式有关,但我无法弄清楚。我正在使用Python 2.7。

txt文件中的一行如下所示:

[2018-01-24 14:57:05,766] [  5]   2.00-3.00   sec   872 KBytes  7140 Kbits/sec  2.714 ms  693/1326 (52%) 

对于这一特定行,我想7140在.csv文件中添加一个

我的代码如下:

lst = []
myfile = file('file.csv', 'wb')
txtfile = open('file.txt')

for line in txtfile:
    line = str(re.findall('\d*\ Kbits', line))
    if(line == "[]"):
        r = 1
    else:
        new = line.replace(" Kbits", "")
        lst.append(new)

wr = csv.writer(myfile, quoting=csv.QUOTE_ALL)
for i in range(0, len(lst)):
    wr.writerow(lst[i])
txtfile.close()
马丁·埃文斯

请尝试以下操作:

import re
import csv

with open('file.txt', 'rb') as f_input, open('file.csv', 'wb') as f_output:
    csv_output = csv.writer(f_output, quoting=csv.QUOTE_ALL)

    for row in f_input:
        kbits = re.findall('(\d+)\ Kbits', row)

        if kbits:
            csv_output.writerow(kbits)

对于您的示例行file.csv如下所示:

"7140"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检索字符串的一部分,从一个字到另一个或将结束

Android-如何用另一个字符串替换字符串的一部分?

如何用熊猫中的另一个字符串替换电子邮件地址的一部分?

Python re.split()将分隔符的部分保留为第一个字符串的一部分,而其他保留为第二个字符串的一部分,依此类推

我想用另一个字符串替换一部分字符串

将字符串的一部分复制到另一个字符串

根据第一个字符或字符的先前出现限制模式的一部分

遍历一个List <string>,但只占用其中每个字符串的一部分

将字符串的一部分转换为另一个字符集

获取与另一个字符串匹配的字符串的一部分

awk选择列的一部分(3个字符中的第3个)

使用WriteLine仅将字符串的一部分写入文件

如果字符串包含另一个字符串的一部分,则为Javascript

查找文本的一部分并写入另一个文件

在C中进行字符串解析。将字符串的一部分复制到另一个字符串

PHP知道字符串是否包含另一个字符串的一部分

如何检查集合中的字符串是否是python 2.7中另一个字符串的一部分?

grep一个文件中的awk字符串并写入字符串文件的另一部分

检查一个字符串是否是另一个字符串的一部分(PHP)

用另一个字符串替换Linux文件中一部分URL字符串

如何将一个字符串快速复制到另一个字符串的一部分中?

如何查找一个字符串(或多个字符串)的一部分是否在列表Python内

如何检查一个字符串是否是另一个字符串的一部分然后替换它

MATLAB 如何检查字符数组的一部分是否存在于另一个字符数组中?

使用 gsub 或类似函数将一个字符变量替换为另一个字符变量的一部分

在数据框中的另一个字符串中搜索字符串的一部分

在C中逐个字符地将字符串的一部分复制到新的字符串中

我如何在 C# 中打印每个字符的一部分

如果匹配另一个字符串的一部分,则替换字符串