Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中调用函数之前,是否可以运行函数的某些部分?_Python - Fatal编程技术网

在python中调用函数之前,是否可以运行函数的某些部分?

在python中调用函数之前,是否可以运行函数的某些部分?,python,Python,所以现在我的代码看起来是这样的(还没有添加其他两个选项): 除了此代码存在的其他问题外,是否可以在调用函数之前,在定义函数之后直接打印我放置的字符串 函数表示一起运行的语句块。尽管Python和其他语言确实定义了可以暂停和恢复运行的“协同例程”,但它们的使用比您所寻求的更高级 通过将问题分解为多个函数(其中一个函数比所有函数都要协调)可以更好地解决您目前的模式。一旦您掌握了这种安排,并可以随意增加函数组,您将能够根据需要转向更复杂的形式。(例如,您还可以为此使用一个类,甚至可以编排一些协同例程)

所以现在我的代码看起来是这样的(还没有添加其他两个选项):


除了此代码存在的其他问题外,是否可以在调用函数之前,在定义函数之后直接打印我放置的字符串

函数表示一起运行的语句块。尽管Python和其他语言确实定义了可以暂停和恢复运行的“协同例程”,但它们的使用比您所寻求的更高级

通过将问题分解为多个函数(其中一个函数比所有函数都要协调)可以更好地解决您目前的模式。一旦您掌握了这种安排,并可以随意增加函数组,您将能够根据需要转向更复杂的形式。(例如,您还可以为此使用一个类,甚至可以编排一些协同例程)


您不想将
print
语句移动到
def
之前吗?如果您想在调用函数之前运行此代码,为什么它是函数的一部分?我希望发生的(我应该指定此项,我很抱歉)是让代码无限期运行,直到满足win条件。我所遇到的困难是如何实现这一点,因此我打算弄清楚如何创建for循环来使用
continue
语句。我得到的答案是能够实现我想要的。我再次为这个模糊的问题道歉,这是我在网站上的第一篇帖子。我知道我不能以此为借口,所以再次道歉。
def what_do(action):
  print "You can eat, move, hunt, or rest."
  for number in resources:
    print number + str(resources[number])
  if action == "eat":
    print "You ate. Hunger restored."
    resources['hunger'] == 0
  if action == "hunt":
    print "You went out and hunted. You found 10 food."
    resources['food'] += 10 
    print resources['food']

what_do(raw_input("What will you do?"))
def prompt():
    print "You can eat, move, hunt, or rest."

def get_action():
    return raw_input("What will you do?")

def what_do(action):
    for number in resources:
        print number + str(resources[number])
    if action == "eat":
        print "You ate. Hunger restored."
        resources['hunger'] == 0
    if action == "hunt":
        print "You went out and hunted. You found 10 food."
        resources['food'] += 10 
        print resources['food']

def game():
    while True:
        prompt()
        action = get_action()
        what_do(action)

game()