我正试图在Roll20.net上构建一个像dice roller这样的独立应用程序,一开始很简单,随着我越来越好,我可以添加更多的功能,包括一个GUI,但是在几个月前放弃之后,回到这个项目,我仍然无法获得甚至输出的最基本的表单。你知道吗
import random
from random import randint
d20 = randint(1,20)
str1 = "You rolled a "
str2 = "Congrats Critical Hit"
str3 = "Uh Oh, Critical Fail"
def roll(d20):
roll(d20)
print (str1 + roll(d20))
if (d20 == 1):
print (str3)
elif (d20 == 20):
print (str3)
else:
print ("")
我要么得到一个完全空白的输出,意味着程序在技术上运行,要么得到一个“0x02A3B078的函数roll”,要么得到一个没有定义的响应。你知道吗
如何解决这个问题?你知道吗
你在定义一个函数,却没有调用它?在程序底部添加以下行:
不要在函数内部调用它。这会导致无限递归。
你需要的是这样的东西:
你想让你的程序具有交互性吗?您可以初始化一个
while
循环并在用户感兴趣的时候重复。你知道吗试试看
一些你将来可能会考虑的事情。你没有调用函数。它有时不打印输出,因为它有18:20的机会
print("")
。你不应该从(1,20)
范围开始。测试(1,2)
并将print
语句放在任何地方。这是确定函数内部发生了什么的唯一方法。如果你不需要它,你不需要print("")
。你知道吗相关问题 更多 >
编程相关推荐