gpt4 book ai didi

python - 如何在 python 中从 sys.stdin 输入矩阵而不丢失其二维结构,同时能够对其使用 numpy 运算?

转载 作者:太空宇宙 更新时间:2023-11-03 16:43:55 27 4
gpt4 key购买 nike

我想获取矩阵并进一步使用它进行计算。但每次使用 numpy.loadtext(sys.stdin) 时我都会收到此错误

Error : File "/usr/lib/python2.6/site-packages/numpy/lib/io.py", line 630, in loadtxt
X.append(tuple([conv(val) for (conv, val) in zip(converters, vals)]))
ValueError: invalid literal for float(): <open
<小时/>

评论中的代码:

#!/usr/bin/python 
import sys
import numpy as np
c = np.zeros(shape=(2,2))
c = np.loadtxt(sys.stdin)
d=[0.0,0.0]
for i in range(0,1):
d[i]=np.linalg.det(c)
print d[i]

最佳答案

np.loadtxt(stdin) 逐行读取输入。它在分隔符(此处为默认空格)上分割行,然后尝试将每个字符串转换为 float 。简而言之:

In [49]: txt="""12.23 23.2
...: 233 2.23
...: """

In [50]: for lines in txt.splitlines():
...: print [float(i) for i in lines.split()]
...:
[12.23, 23.2]
[233.0, 2.23]

hadoop 框架中的 stdin 看起来像那样吗?

我一直在问 - stdin 文本是什么样的。

关于python - 如何在 python 中从 sys.stdin 输入矩阵而不丢失其二维结构,同时能够对其使用 numpy 运算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36516905/

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