繁体   English   中英

设置函数在python中调用raw_input

[英]Setting function to call raw_input in python

我如何使这项工作? 我正在尝试设置一个全局函数,以便我可以稍后为原始输入调用它,而不是在需要的地方调用原始输入。

我认为我在一定程度上掌握了我所需要的本质,但我对如何格式化它,或者是否可能进行格式化感到困惑。

先感谢您。

   def choice_1():
        choice_1 == raw_input("> ")
    def choice_1a():    
        choice_1a = raw_input("> ") 
    def choice_1b():    
        choice_1b = raw_input("> ")

编辑:我认为我的问题的目的不够清楚。 这是我正在处理的代码的更新,也许这可以解决问题。

print "You've arrived at your desk"


def choice_1(one):
    choice_1a = raw_input("< ")
def choice_1a():    
    choice_1a = raw_input("> ") 
def choice_1b():    
    choice_1b = raw_input("> ")

#Choice_1
print "What do you want to do?"
print "We can \n1. Read\n2. Draw\n3. Work on homework"
print choice_1
#choice 1 branch 1
if choice_1 == "1":
    print "What book should we read today?"
    print "We can read\n1. Tom Sawyer\n2. Quantum Physics \n3. Ray Bradbury"
    print choice_1a
    if choice_1a == "1":
        print "Great choice!"
    if choice_1a == "2":
        print "Heavy stuff there."
    if choice_1a == "3":
        print "Entertaining author, that one there!"
    else:
        print "Let's go to the library, maybe they'll have that one."
#choice 1 branch 2
if choice_1 == "2":
    print "What would you like to draw?"
    print "We can draw a\n1. Tiger\n2. Fish\n3. Bear "
    print choice_1b
    if choice_1b == "1":
        print "You drew a Tiger!"
    if choice_1b == "2":
        print "You drew a Fish!"
    if choice_1b == "3":
        print "You drew a Bear!"
    else:
        print "Time for some improvisation."

#choice 1 branch 3
if choice_1 == "3":
    print ""

这是否清除了一些混乱?

这会做你想做的。 正如@SethMMorton 所指出的,你错过了return

def choice():
    return raw_input('> ‘)

顺便说一句,这不是一件好事,因为对于阅读您的代码的人来说,不会立即清楚choice在做什么。

我这样做了:

print 'Your name is :' + choice()

它按预期工作。

编辑:你应该这样做出你的 if 语句:

if choice() == "1"

 def multiplier(x, y):
     ans = x * y
     print ans

这将是一个函数的用途,当准备使用它时,你会像这样调用它

 multiplier(5, 10)
      50

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM