zoukankan      html  css  js  c++  java
  • 【网易官方】极客战记(codecombat)攻略-森林-返回荆棘农场 B-return-to-thornbush-farm-b

    食人魔再次来袭,只有更多参数能够救你!

    简介

    你的函数可以定义不止一个参数。

    def maybeBuildTrap(x, y):
        # 当如下函数被调用时,
        # x将是43,y将是50
    maybeBuildTrap(43, 50)

    默认代码

    # 函数maybeBuildTrap定义了两个参数!
    def maybeBuildTrap(x, y):
        # 使用x和y作为移动的坐标。
        hero.moveXY(x, y)
        enemy = hero.findNearestEnemy()
        if enemy:
            pass
            # 使用 buildXY 在特定 x 和 y 处建造 "fire-trap"

     

    while True:
        # 这会调用maybeBuildTrap,使用下方入口的坐标。
        maybeBuildTrap((38, 20)
        # 下面在右侧入口使用maybeBuildTrap!

     

        # 现在在上方入口处使用maybeBuildTrap! !

    概览

    就像 moveXY 接收两个参数那样,你创建的函数也可以定义多个参数!

    def maybeBuildTrap(x, y):
        # 当函数被调用时,
        # x 会是 43,y 会是 50
    maybeBuildTrap(43, 50)

    形参 vs. 实参

    为啥有时我们叫它形参,有时叫它实参?

    形参 (parameter) 是在函数定义里的参数。

    实参 (argument) 是函数被调用时传进的实际参数值!

    返回荆棘农场 B 解法

    # 函数maybeBuildTrap定义了两个参数!
    def maybeBuildTrap(x, y):
        # 使用x和y作为移动的坐标。
        hero.moveXY(x, y)
        enemy = hero.findNearestEnemy()
        if enemy:
            # 使用 buildXY 在特定 x 和 y 处建造 "fire-trap"
            hero.buildXY("fire-trap", x, y)

     

    while True:
        # 这会调用maybeBuildTrap,使用下方入口的坐标。
        maybeBuildTrap(38, 20)

     

        # 下面在右侧入口使用maybeBuildTrap!
        maybeBuildTrap(56, 34)
        # 现在在上方入口处使用maybeBuildTrap!
        maybeBuildTrap(38, 48)
     
     
  • 相关阅读:
    pythonchallenge(二)
    pythonchallenge(三)
    pythonchallenge(一)
    [译]Python编写虚拟解释器
    [译]用R语言做挖掘数据《七》
    [译]用R语言做挖掘数据《六》
    [译]用R语言做挖掘数据《五》
    编译安装php容易出现的问题以及解决办法
    关于nodejs模块安装后找不到包解决办法
    gulp的入门
  • 原文地址:https://www.cnblogs.com/codecombat/p/12212567.html
Copyright © 2011-2022 走看看