我有一些基本代码可以在python3中掷骰子,我的输入字段正在产生大括号而不是所需的整数。如何显示整数代替花括号?
对于一个试图更好地理解python的个人项目。 我还没有尝试过任何东西,因为我还是python新手,不确定从哪里开始。试图在这里搜索,发现有些东西对我来说太高级了,或者比我需要的问题更具体。
from random import randint
def roll(sides, number):
return [randint(1, sides) for i in range(number)]
sides = int(input("\nHow many sides do you want on your dice?: "))
number = int(input("\nHow many {} sided dice do you want to roll?: "))
results = roll(sides, number)
sides = int(sides)
number = int(sides)
print(results)
如果我输入10和2(作为示例),则为预期结果: 您想死几个人?:10 您要滚动多少个10面模具?:2
输出改为: 您想要骰子上有多少面?:10
您要掷多少个{}边骰子?:2
如果这是一个愚蠢的问题,我深表歉意,但是我不确定从哪里开始。
如果这里的格式很奇怪,请提前道歉,这是我在这里的第一篇文章,我不确定合适的方法。
答案 0 :(得分:1)
如果您使用Python 3.6或更高版本,则可以使用带有{f1前缀的Formatted string literals,例如:f"your {var} variable"
。例如:
number = int(input(f"\nHow many {sides} sided dice do you want to roll?: "))
或者,您可以显式使用 format 方法:
number = int(input("\nHow many {sides} sided dice do you want to roll?: ".format(sides=sides)))
或
number = int(input("\nHow many {} sided dice do you want to roll?: ".format(sides)))