【发布时间】:2015-10-20 17:20:18
【问题描述】:
长话短说,我正在为随机和编写代码,并已开始使用运算符导入以使其更容易和更高效。但是,在打印结果时:
from operator import add, sub, mul
ops = (add, sub, mul)
op = random.choice(ops)
print("What is",ranNum1,op,ranNum2,"?")
我明白了:
什么是93?
我试图删除结果中的字母,但它是一个元组,而不是一个字符串,所以这是不可能的。有什么建议吗?
【问题讨论】:
-
我假设你想要一个操作符号。
from operator import add, sub, mul导入这些函数,所以当你把它们放在一个字符串中时,你会得到函数对象。你需要用字典滚动一些东西。 -
我正在尝试从打印结果中删除“”
-
如果不可能,有没有办法绕过它?我试图以更基本的方式提出问题,例如“什么是 10 + 2?”我尝试使用 if 语句,它使用 'op' () 的打印结果,但这不起作用:例如: if op == '
' print( "什么是", ranNum1,"+", ranNum2,"?") elif op == '' print("什么是", ranNum1,"-", ranNum2,"?") else : print("什么是", ranNum1,"*", ranNum2,"?") userAnswer = int(input("")) -
阅读并理解摩根的评论。您正在打印一个函数对象。为了打印出一个符号(
+、-、*),您需要创建一个字典来将函数映射到它们的关联符号。
标签: python string function python-3.x