createprocess失败代码2_极客战记[森林]:边地之叉-通关代码及讲解
森林
地牢里的關卡主要是偏向鍛煉用戶的基本語法結構和計算機思維,讓大家熟悉極客戰記的操作與代碼的使用,來到了森林,關卡將會變得更多更難,同樣,到了森林,大家就正式開始接觸編程的幾大重要知識點:
條件判斷、運算符、函數、對象屬性關卡:邊地之叉
關卡圖片- 關卡地址:
「邊地之叉」這一關涉及的編程知識為:「函數」和 「參數」,大家需要理解函數及其參數是什么東西,究竟需要如何使用的,即可順利過關。
- 通關展示:
- 思路講解:
進入本關,剛開始如果你不太明白這一關需要英雄做什么,那么你可以直接點擊運行按鈕,來觀察游戲過程,你需要找到兩個要點:
這是在默認代碼下的運行情況,可以知道:
因此,此時的通關思路為:
觀察代碼,在以往我們的代碼都是僅有一個代碼塊,一個While True無限循環代碼塊包括了所有的運行代碼塊,而本關,除了While True代碼塊以外,還多了一塊代碼,它就是def函數代碼塊。
知識點:函數
函數是我們在上一關接觸到的知識點,
在Python里,我們使用關鍵字 def 來定義一個函數:
關鍵字def是英文單詞define的縮寫,具有定義,明確的意思,我們創建一個函數,也叫定義一個函數。
創建函數的格式如下:
def可以看到,我們創建函數的時候,使用了冒號,為函數創建了一個單獨的代碼塊。
如果不記得代碼塊的概念了,可以點擊鏈接,回到地牢復習一下:極客戰記[地牢]:迷失在書庫-通關代碼及講解
調用函數的格式則是:
函數名()十分簡單。
函數的作用:
如果你有一段非常方便的代碼,例如尋找敵人攻擊敵人,那你要在每個可能有敵人的地方,都寫一遍這一段代碼,十分繁瑣。
而函數,就是一個偷懶的工具,我們可以把它想象成一個機器人,我們在機器人的程序里(函數體內)寫好代碼,當我們需要使用這段代碼時,呼叫機器人的名字(函數名加括號),就能叫出這機器人來幫忙,而不需要總是寫一大串同樣的代碼了。
也因此,函數內的代碼,它在沒被調用時,是不會執行的。
就像圖中的函數checkAndAttack,雖然它的代碼在最上面,但它的代碼不會被執行,而是直接跳過,當后面有需要調用函數時,才運行這一段代碼。
了解了函數以后,我們再來了解一下參數
知識點:參數
我們剛剛說,函數就像一個機器人,代碼寫在機器人的程序里,因此我們可以這么理解,函數和其他的代碼,它們是互不相關的,機器人的程序(函數)和正常運行的代碼,是兩個相互獨立的程序。
因此,我們在正常運行的代碼里寫的一些變量,它們是不能直接使用到函數里的,因為它們是互不相關的兩個程序。
而參數,就是幫我們把外界變量傳入函數內的工具。
創建參數的方法:
def 函數名(參數名):直接在函數名的括號內寫上你要創建的參數名即可,你還可以創建不止一個參數:
def 函數名(參數名1,參數名2,參數名3……):參數就是一個變量,它是專門用在函數里的,你可以提前寫好它們各自要做的工作:
def Test(t1,t2):hero.attack(t1)hero.say(t2)然后我們再按順序,在調用的時候把我們的變量傳入參數里:
def Test(t1,t2):hero.attack(t1)hero.say(t2)enemy1 = hero.findNearestEnemy() word = "你好!" Test(enemy1,word)Test(enemy1,word),就是把enemy1作為t1,word作為t2傳入了Test函數里,這樣此時執行Test函數的時候,英雄就是去攻擊enemy1,并說“你好!”
明白了這兩個知識點以后,我們再看到關卡里的代碼:
此時我們就知道,上方一個代碼塊,是系統已經幫我們寫好的攻擊敵人,并回到中心點的代碼塊,無需修改。
那么我們以目前while True內的代碼作為模板,寫出攻擊底部敵人的代碼:
- 通關代碼:
以上便是森林關卡「邊地之叉」的過關教學了~
地牢關卡通關教程:
2. 極客戰記[地牢]:注釋中的密語-通關代碼及講解
3. 極客戰記[地牢]:迷失在書庫-通關代碼及講解
4. 極客戰記[地牢]:換個名字-通關代碼及講解
森林關卡通關教程:
2. 極客戰記[森林]:邊地僵局-通關代碼及講解
3. 極客戰記[森林]:發狂的矮人-通關代碼及講解
本欄目將會長期以正常順序更新極客戰記的關卡講解,如果覺得我們的內容對你有用,有幫助的話,不妨點一下右上角的關注吧!~
總結
以上是生活随笔為你收集整理的createprocess失败代码2_极客战记[森林]:边地之叉-通关代码及讲解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mongodb创建用户名和密码_Pyth
- 下一篇: 运用高斯核模型进行最小二乘回归_比特币价