我是Python语言的新手。在一门课程中,他们要求我们做关于这门语言的家庭作业,并自己调查它。在这部分代码中,我首先用range(0, 1024)
方法声明范围,并用sample
方法生成随机数,我相信这些都保存在列表中,所以我接下来要做的是这些随机生成的数字将它们转换为二进制,但我得到这个错误:
TypeError: 'list' object不能被解释为整数
所以我不知道是否有一种方法可以将列表转换为整数或者我不知道他们会建议我做什么…
这是我的代码:
y = list(range(0, 1024))
numRandom = sample(y, 10)
print(numRandom)
print(bin(numRandom))
可以使用列表推导式创建一个新列表,其中包含原始列表中每个数字的二进制表示形式。
print([bin(x) for x in numRandom])
如错误所示,numRandom
是一个列表,而不是整数。具体来说,它是一个随机的10个int
s的列表。
要将bin
函数应用于列表的第一个元素,您可以这样做:
print(bin(numRandom[0]))
你可以遍历列表,并使用for
循环对每个列表执行此操作:
for num in numRandom:
print(bin(num))
或者您可以使用列表推导式构建二进制表示列表:
print([bin(num) for num in numRandom])
使用地图
print([*map(bin, random.sample(y, 10))])
或使用列表推导式
print([bin(x) for x in random.sample(y, 10)])