gpt4 book ai didi

python - np.loadtxt() 如何从txt文件中每隔一行加载? Python

转载 作者:行者123 更新时间:2023-11-30 22:28:33 27 4
gpt4 key购买 nike

我有一个 txt 数据文件,我只想从中加载偶数行。

有没有办法在Python中不使用循环来做到这一点?

这是我的数据文件的前 10 行:

1 25544U 98067A   98324.28472222 -.00003657  11563-4  00000+0 0    10
2 25544 51.5908 168.3788 0125362 86.4185 359.7454 16.05064833 05
1 25544U 98067A 98324.33235038 .11839616 11568-4 57349-2 0 28
2 25544 51.6173 168.1099 0123410 88.0187 273.4932 16.04971811 11
1 25544U 98067A 98324.45674522 -.00043259 11566-4 -18040-4 0 32
2 25544 51.5914 167.4317 0125858 91.3429 269.4598 16.05134416 30
1 25544U 98067A 98324.51913017 .00713053 11562-4 34316-3 0 48
2 25544 51.5959 167.1152 0123861 87.8179 273.5890 16.05002967 44
1 25544U 98067A 98324.51913017 .00713053 11562-4 34316-3 0 59
2 25544 51.5959 167.1152 0123861 87.8179 273.5890 16.05002967 44

最佳答案

一种方法是使用计数器和模运算符:

fname = 'load_even.txt'

data = [];
cnt = 1;
with open(fname, 'r') as infile:
for line in infile:
if cnt%2 == 0:
data.append(line)
cnt+=1

这会逐行读取文件,在每行后增加计数器cnt,并且仅当计数器值为偶数时才将该行附加到data(在本例中为偶数)对应于偶数行号。

对于 numpy 数组的特定情况,您可以使用:

import numpy as np

fname = 'load_even.txt'

data = [];
cnt = 1;
with open(fname, 'r') as infile:
for line in infile:
if cnt%2 == 0:
data.append(line.split())
cnt+=1

data = np.asarray(data, dtype = float)

关于python - np.loadtxt() 如何从txt文件中每隔一行加载? Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46594532/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com