如何更正输入提示中花括号的显示?

How to correct display of curly braces in an input prompt?

我有一些在 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

如果这是一个愚蠢的问题,我深表歉意,但我不确定从哪里开始。

如果这里的格式很奇怪,请提前致歉,这是我第一次post在这里,我不确定正确的方法。

如果您使用 Python 3.6 或更高版本,您可以使用 "f" 前缀的 Formatted string literals,例如:f"your {var} variable"。例如:

number = int(input(f"\nHow many {sides} sided dice do you want to roll?:  "))

或者,您可以显式使用 格式 方法:

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)))