zoukankan      html  css  js  c++  java
  • 「网易官方」极客战记(codecombat)攻略-森林-强攻农舍

    简介

    用旗子保护房子的每一个入口。使用cleave()当你能清除大量敌人。

    在这个关卡上,你需要生存和保护农民。使用标志来操纵你的英雄(记住你需要按下提交使用标志)。

    如果你遇到麻烦,当一大群妖怪攻击时,试着使用像Cleave这样的区域攻击。

    Python是很棒的编程语言!它能让你快速完成工作,有效整合成体系。它易于阅读和使用,交互模式让简短代码的测试格外简单。此外,Python还是开源的。

    方法

    实际做事的就是方法!

    self.moveRight()

    方法是给计算机的命令。上面是调用方法的例子,这里具体是moveRight

    这是Tharin的方法之一。self说的是,你自己的单位的方法,而不是别人的。没有它,在哪找moveRight方法就不明确了。

    方法后的括号意思不过是'运行它'。没有它们的话,什么都不会发生。

    self.say("Hello!")
    self.moveXY(5,6)

    方法的参数被放到括号之间。参数指定了命令具体怎么做。这里,say()告诉英雄说点什么,而"Hello!"告诉他具体说的内容。(引号不能少,因为这是文本字符串,文本字符串必须要有引号。)

    多个参数需要用逗号隔开。moveXY(5, 6)中,5是第一个参数(x坐标),6是第二个参数(y坐标)。 (数字不使用引号)

    变量

    让我们给事物取名字!

    enemy=self.findNearestEnemy()
    self.say(enemy)
    taunt=("哈哈,你现在挂了!")
    self.say(taunt)
    deadEnemies=1
    deadFriends=0
    score=deadEnemies-deadFriends

    变量是存储事物的简单方式。如上面的前两行,编码者通常将角色或对象存为变量,这样就能轻松将其用作函数参数了。经常使用的文本字符串也可以存到变量中,这会大幅减少重复输入的麻烦。最后三行给的是变量表示数值的例子。变量中存储的数值,之后可以用到方程中。当然,你也可以用这些变量来跟踪程序运行。

    要创建变量,你需要键入变量名,等号,然后是要存储的信息。如果变量名含有多个单词,中间使用空格是不允许的,你可以将每个词的第一个字母大写,这样会便于阅读,例如: lowestHealthFriendlowesthealthfriend更容易理解。这通常被称作驼峰式大小写。说到大小写,变量名中的大小写是有区分的。你在使用变量的过程中,一定要保持大小写固定不变。例如:

    enemy=self.findNearestEnemy()
    self.say(Enemy)

    这段代码没法工作,因为"enemy"和"Enemy"不是相同的变量。按Shift时务必小心!

    真和假

    要想让if块执行,冒号前if条件的值必须为真。如果条件为假,else块就会执行(如果有else块的话)。Python中的几个假值如下:

    • None
    • False(布尔值)
    • 0(整数)
    • 0.0(浮点数)
    • 0L(长整数)
    • 0.0+0.0j(复数)
    • "" (空字符串)
    • ( )(空元组)
    • { }(空字典)

    其他的一切都为真:

    • 所有对象
    • 所有非空数组
    • 所有非0数字(包括虚数)
    • 所有非空字符串
    • True(布尔值)

    Python中的if和else语句

    编程的目的就是为了自动处理各种情形。基于不同状态做不同事情的主要工具是if和else,用法像这样:

    a=3
    b=9
    if(a>b):
        self.say("数学出问题了!")
        self.soundTheAlarm()
    else:
        self.say("数学还奏效。")
        self.sleep()

    本例中,if块中的代码不会执行(if语句和else语句之间的所有代码),因为3永远不会大于9。只有else块会被执行。

    注意,if条件为真时要执行的语句都需要正好比if多缩进四个空格。这样计算机才能知道条件为真时要运行什么代码。

    还要注意if语句后的冒号,冒号只出现在这里,告诉计算机要执行的判别完了,准备好执行判别后的指令。

    循环(while-ture)

    有时特定代码需要永远重复执行!躲避火球或逃离很长的迷宫就是两种这样的情况!while-true循环可以做到这个!

    while-true循环可以考虑成一段代码的容器,它能让容器内的代码反复执行。

    知道这个概念之后,还需要知道相应的语法,需要按照计算机的方式计算机才能理解。

    例如:

    while Ture:# 注意while、Ture和:
        hero.moveRight()# 注意四格缩进
        hero.moveUp()#注意四格缩进

    while-true循环后的代码永远不会被执行!

    一旦进入while-true循环,后面的代码都不会执行!例如:

    while Ture:
        # :后缩进四格的代码将永远重复!
        # 是
        # 是
    # 下面这里的代码永远无法执行!
    # 代码会卡在while-ture循环之内

    强攻农舍 解法

    # 这是一个综合应用关卡,需要你自己完成。
    # 开通脑筋,通过关卡吧。
     

    本攻略发于极客战记官方教学栏目,原文地址为:

    https://codecombat.163.com/news/jikezhanji-qianggongnongshe

    极客战记——学编程,用玩的!

  • 相关阅读:
    union 和 union all的区别
    JDBC中PreparedStatement相比Statement的好处
    25个经典的Spring面试问答
    MySQL 事务
    漫谈Linux下的音频问题(转)
    监控 Linux 性能的 18 个命令行工具(转)
    在终端中用默认程序打开文件(转)
    【转】使程序在Linux下后台运行 (关掉终端继续让程序运行的方法)
    Getting Started with Amazon EC2 (1 year free AWS VPS web hosting)
    压缩解压命令小结
  • 原文地址:https://www.cnblogs.com/codecombat/p/12463166.html
Copyright © 2011-2022 走看看