TypeError:打印时需要一个整数(得到类型 str) ar = array("B", ['hello', 'to', 'myuniVerse'])
Posted
技术标签:
【中文标题】TypeError:打印时需要一个整数(得到类型 str) ar = array("B", [\'hello\', \'to\', \'myuniVerse\'])【英文标题】:TypeError: an integer is required (got type str) on printing ar = array("B", ['hello', 'to', 'myuniVerse'])TypeError:打印时需要一个整数(得到类型 str) ar = array("B", ['hello', 'to', 'myuniVerse']) 【发布时间】:2021-12-10 05:50:26 【问题描述】:from array import *
ar = array("B", ['hello', 'to', 'myuniVerse'])
for i in range(len(ar)):
print(ar[i])
错误:
ar = array("B", ['hello', 'to', 'myuniVerse'])
TypeError: an integer is required (got type str)
请帮助解决上述代码中的问题。
【问题讨论】:
因为您正在创建整数数组(类型代码“B”)并尝试使用字符串列表对其进行初始化...为什么需要使用数组而不是列表类型的 ibject? 【参考方案1】:来自array
docs(强调我的):
一个新数组,其项目受类型代码限制,并从可选的初始化值初始化,该值必须是列表、字节类对象或可迭代适当的元素输入。
换句话说,如果你想使用 Python array
,你需要指定正确的类型,也就是传递给数组的第一个参数。
看起来有no support for strings in Python array
,所以您可能想改用list
:
ar = ['hello', 'to', 'myuniVerse']
for item in ar:
print(item)
或者,根据您的情况,您可以考虑使用pandas.array()
:
import pandas as pd
ar = pd.array(['hello', 'to', 'myuniVerse'])
for item in ar:
print(item)
【讨论】:
好的,非常感谢。这也是我的低估。我试图使用数组打印字符串列表,我以为我使用了错误的类型代码,但看起来我们不能使用数组来打印字符串。我会坚持这个清单。再次感谢!!以上是关于TypeError:打印时需要一个整数(得到类型 str) ar = array("B", ['hello', 'to', 'myuniVerse'])的主要内容,如果未能解决你的问题,请参考以下文章
TypeError:在cartopy中使用时字符串索引必须是整数,但正常打印工作正常
googleapis / python-bigquery:Client.load_dataframe_to_table 失败并出现 PyArrow “TypeError:需要一个整数(获取类型 str