“list”对象不能解释为整数有没有办法将列表转换为整数?

2024-05-26 22:58:36 发布

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

我是Python语言的新手。在一个科目中,他们要求我们用这种语言做家庭作业,并自己调查。在代码的这一部分中,我首先使用range(0, 1024)方法声明范围,然后使用sample方法生成随机数,我相信这些随机数保存在列表中,因此我接下来要做的是,这些随机生成的数字将它们转换为二进制,但我得到以下错误:

TypeError: 'list' object cannot be interpreted as an integer

所以我不知道是否有办法将列表转换成整数,或者我不知道他们会建议我做什么

这是我的代码:

y = list(range(0, 1024))
numRandom = sample(y, 10)
print(numRandom)
print(bin(numRandom))

Tags: sample方法代码语言声明列表二进制range
3条回答

您可以使用List Comprehensions创建一个新列表,其中包含原始列表中每个数字的二进制表示形式

print([bin(x) for x in numRandom])

正如错误所说,numRandom是一个列表,而不是一个整数。具体来说,它是一个由十个随机的int组成的列表

要将bin函数应用于列表的第一个元素,可以执行以下操作:

print(bin(numRandom[0]))

您可以迭代列表,并使用for循环对每个列表执行此操作:

for num in numRandom:
    print(bin(num))

或者,您可以构建一个具有列表理解的二进制表示的列表:

print([bin(num) for num in numRandom])

使用Map

print([*map(bin, random.sample(y, 10))])

或使用列表理解

print([bin(x) for x in random.sample(y, 10)])

相关问题 更多 >

    热门问题