首页 > 解决方案 > 如何将集合中的条目更改为整数

问题描述

我正在尝试将集合的条目更改为整数

我尝试隔离条目并在其上使用“int”函数

contestant = input("Choose a door from the three doors:")
doors = {1,2,3}
prize = random.randint(1,3)
revealable_doors = doors - {int(contestant), int(prize)}
host = int(revealable_doors)

我希望主机将是一个整数,但我不断收到此错误

host = int(revealable_doors)
TypeError: int() argument must be a string, a bytes-like object or a number, not 'set'

标签: python

解决方案


revealable_doors = doors - {int(contestant), int(prize)}将返回一个或两个元素的集合。

因此,您不能像在此中所做的那样将 set 转换为 int :host = int(revealable_doors)

您可以尝试以下代码:

import random
contestant = input("Choose a door from the three doors:")
doors = {1,2,3}
prize = random.randint(1,3)
revealable_doors = doors - {contestant, prize}
host = revealable_doors.pop()
print(host)

推荐阅读