如何從文件中獲取特定文本?

我生成了一個數據文件,格式如下:

0.1
Analytic value = 340.347685734
Approximated value = 332.45634555
--
0.2
Analytic value = 340.936745872
Approximated value = 332.57893789
--
0.3
... and so on

我想根據輸入參數(0.1、0.2等繪制matplotlib/gnuplot中的分析值和近似值。通常,在生成數據文件之前,我使用awk腳本生成它們,該腳本將三個值放在三列中,這很容易繪制。然而,在這里,我意外地以不同的格式生成了數據文件。如何將此文本文件轉換為以下內容(可能使用regex或awk!):

0.1 340.347685734 332.45634555 
0.2 340.936745872 332.57893789
0.3 ... and so on

或者有沒有一種方法可以在不使用gnuplot/matplotlib轉換格式的情況下繪制數據?

編輯:我曾試圖用python 3來做這件事。以下是我的代碼:

file = open("myFile.dat",'r')
newFile = open("newFile.dat", 'a')
for i in range(4000):
  col1 = file.readline().split[-1]
  col2 = file.readline().split[-1]
  col3 = file.readline().split[-1]
  _ = file.readline().split[-1]
  line = col1 + " " + col2 + " " + col3
  newFile.write(line)

然而,我得到了一些錯誤TypeError: 'builtin_function_or_method' object is not subscriptable,我不理解,我認為這是一個非常低效的代碼。這就是我在SE中詢問的原因。到目前為止提出的所有解決方案都非常有效。我用awk標記了這個解決方案作為已接受的答案,因為它簡單而優雅。此外,我很欣賞只使用gnuplot的解決方案,它也為我揭示了gnuplot中的一個方面。

? 最佳回答:

我將以如下方式利用GNU AWK來完成這項任務,讓file.txt的內容

0.1
Analytic value = 340.347685734
Approximated value = 332.45634555
--
0.2
Analytic value = 340.936745872
Approximated value = 332.57893789
--

then

awk '/^--$/{print "";next}{printf "%s ",$NF}' file.txt

doess output

0.1 340.347685734 332.45634555 
0.2 340.936745872 332.57893789

解釋:對于第--行,只需打印換行符并轉到下一行,對于所有其他行,輸出最后一個字段,后面跟著空格,而不是換行符。如果您想了解更多關于NF的信息,請閱讀8個強大的Awk Built-in變量–FS、OFS、RS、ORS、NR、NF、FILENAME、FNR

(在GNU Awk中測試5.1.0)

主站蜘蛛池模板: 国内精品无码一区二区三区| 亚洲AV无码一区二区三区牲色| 国模一区二区三区| 日本韩国黄色一区二区三区 | 亚洲AV无码一区二区二三区软件 | 国产免费av一区二区三区| 久久久精品人妻一区亚美研究所| 亚洲片一区二区三区| 在线免费视频一区二区| 2021国产精品视频一区| 福利一区二区三区视频在线观看| 国产精品乱码一区二区三区| 国产乱码精品一区二区三区四川人 | 中文字幕永久一区二区三区在线观看 | 国产在线精品一区二区高清不卡| 成人精品一区二区三区电影| 久久久无码精品人妻一区| 一区二区三区在线观看| 亚洲国产成人久久一区二区三区 | 欧洲精品一区二区三区在线观看| 亚洲a∨无码一区二区| 91午夜精品亚洲一区二区三区| 亚洲一区爱区精品无码| 亚洲线精品一区二区三区| 丝袜人妻一区二区三区| 精品亚洲一区二区| 天堂资源中文最新版在线一区| 人妻无码第一区二区三区| 无码人妻视频一区二区三区| 激情内射亚洲一区二区三区| 国产91大片精品一区在线观看| 亚洲性色精品一区二区在线| 亚洲AV网一区二区三区| 精品不卡一区中文字幕| 中日av乱码一区二区三区乱码| 久久一本一区二区三区| 在线成人一区二区| 一区二区三区高清视频在线观看| 成人精品一区二区三区中文字幕| 国产激情无码一区二区app| 亚洲av不卡一区二区三区|