如何比较python3中的numpy字符串

2024-03-28 19:57:48 发布

您现在位置:Python中文网/ 问答频道 /正文

以下说明了问题:

import io
import numpy as np

a = np.loadtxt(io.StringIO("val1 val2\nval3 val4"), \
               dtype=np.dtype([("col1", "S10"), ("col2", "S10")]))
print("looks weired: %s"%(a["col1"][0]))
assert(a["col1"][0] == "val1")

我不明白我该如何比较琴弦。在我的系统(numpy 1.6.2,python 3.2.2)上,输出如下所示:

^{pr2}$

Tags: ioimportnumpyasnpcol2col1dtype
1条回答
网友
1楼 · 发布于 2024-03-28 19:57:48

这与numpy无关:

>>> b"asd" == "asd"
False

在Python 3中,bytes对象与string的比较不相等。因此:

  • b"val1"而不是{}进行比较,以便类型匹配
  • bytes对象解码为一个字符串(如.decode('utf-8')),并与"val1"进行比较。在

相关问题 更多 >