加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

从Python中的.dat文件中读取特定列

发布时间:2020-12-20 12:38:10 所属栏目:Python 来源:网络整理
导读:我有一个results.dat文件,其中包含以下数据: 7522126 0 0 0 0 0 0 -419.795 -186.24 1852.86 0.134695 -0.995462 -2.531537825452 0 0 0 0 0 0 -419.795 -186.24 1852.86 0.134695 -0.995462 -2.531538073799 0 0 0 0 0 0 -345.551 -140.711 1819.04 -0.022
我有一个results.dat文件,其中包含以下数据:

7522126 0   0   0   0   0   0   -419.795    -186.24 1852.86 0.134695    -0.995462   -2.53153
7825452 0   0   0   0   0   0   -419.795    -186.24 1852.86 0.134695    -0.995462   -2.53153
8073799 0   0   0   0   0   0   -345.551    -140.711    1819.04 -0.0220266  -0.85992    -2.29598

每个值都由一个选项卡分隔.

我想为每一行提取例如第8列的值,并将其保存到数组中.所以输出应该是这样的:

-419.795
-419.795
-345.551

最简单的方法是什么?

解决方法

with open('results.dat') as f:
    [line.split()[7] for line in f]

或定义一个函数,

get_col = lambda col: (line.split('t')[col-1] for line in open('results.dat'))

现在使用所需的列号调用该函数. get_col(8)给出第8列数据.要将其存储在数组中,

array.array('d',map(float,get_col(8)))

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读