繁体   English   中英

读取文本文件中特定列和行中的数据

[英]read data in specific column and row of a text file

我有一个包含3列和20000行的文本文件。 我想知道如何获取第1000行和第2列中的特定数据(例如)? 我的第一列的格式类似于AAAA,第二列的格式类似于1234。我尝试了此解决方案,但是由于第一列是字母,因此我想定义一个变量,该变量最后包含我的数据,因此出现错误:

with open ('my_file') as f:
    for x , line in eumerate(f):
         if x = 1000:
             numfloat = map(float , line.split())
             print numfloat[1]

您试图在包含字母的东西上使用float() 发生这种情况,当您致电:

numfloat = map(float , line.split()) 

您需要告诉我们您想要的确切输出,但这是一种可能的解决方案

num_float = map(float, line.split()[1])

or better yet

num_float = float(line.split()[1])

这只会为您提供中间的列,我不确定是否需要整个行。

此外,如下所述,您需要在if语句中将=更改为== =表示比较, ==表示比较。

在代码的第3行将'='变为'=='

with open('my_file', 'r') as f:
    for x, line in enumerate(f):
        if x == 1000:
            print float(line.split()[1])
import re

with open('my_file', 'r') as f:
    for x, line in enumerate(f):
        if x == 1000: 
            array = re.split('(\d+)',line) # array=['AAAA','123'] if line='AAAA123'
            print array[1] # your required second row.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM