【发布时间】:2021-11-14 03:36:26
【问题描述】:
import subprocess
awk1 = subprocess.check_output("awk '{print $1}' "+file+"").decode("utf-8")
print(awk1)
这段代码给出了我正在寻找的结果;我使用AWK 是因为我发现提取 2 - 5 美元比使用 Python 更容易。
当我打印 awk1 时,它给了我;
HEADER
DESCRIPTION (can be over multiple lines)
TEST TYPE
RESULTS (numbers below are just examples)
-999.00
-500
-100.15
+1
+23.111
+500
我想做的是确定是否有任何结果大于 -500。我尝试使用 max() 但这会抛出错误,因为我有 str 和 ints 存在。同样出于某种原因,如果我尝试将其放入循环中(for i in akw1 ....),它将垂直打印,例如;
1
0
0
.
1
5
Instead of 100.15
结果开头的行可以有不同的长度,结果中的行也可以包含字符串。哪个是删除字符串然后确定数字是否大于指定数量的最有效方法?谢谢。
【问题讨论】:
-
为什么不尝试初始化一个空白字符串,然后将结果(在每个循环实例的末尾)添加到已经存在的字符串中。