【发布时间】:2018-02-24 21:59:19
【问题描述】:
我有一个应该代表二进制的整数列表:
x = [1, 0, 1, 1, 0, 0, 0, 0]
y = ''.join(x[:4])
我似乎无法加入它,我得到“序列项 0:预期的 str 实例,找到 int”
如果我这样做了
x = [str(1), str(0), str(1), str(1), str(0), str(0), str(0), str(0)]
y = ''.join(x[:4])
我得到“类型错误 int 对象不可下标”,但我没有尝试访问 int。
有人知道怎么回事吗?
【问题讨论】:
-
第二个不可能给出这个错误。你一定做了别的事情。再次自己运行。
-
str.join() 方法连接的是字符串序列,而不是整数。
-
您也可以将
str映射到列表中,x = list(map(str, [1, 0, 1, 1, 0, 0, 0, 0]))或x = [str(x) for x in [1, 0, 1, 1, 0, 0, 0, 0]]。