最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實(shí)現(xiàn)簡單飛行棋

 更新時(shí)間:2020年02月06日 08:15:42   作者:htnigel  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡單飛行棋,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本人剛開始學(xué)習(xí)python,看了一段時(shí)間視頻教程之后,決定做一個(gè)小游戲來鞏固一下知識(shí)點(diǎn),就做了一個(gè)文字版飛行棋,暫不具備圖形界面。把代碼貼出來,給自己留個(gè)標(biāo)記。

chess_main.py

import chess_tools

# 輸入玩家信息
chess_tools.input_player()

while chess_tools.end_flag:
  for player in chess_tools.player_list:
    chess_tools.ironman(player)
    input(player["name"]+",請按enter擲骰子")
    chess_tools.throw(player)
    if chess_tools.judge(player) == 1:
      break
    chess_tools.hit(player)
    chess_tools.speedup(player)
    print("")

chess_tools.py

from random import randint


player_list = []
end_flag = 1


def input_player():
  num = input("數(shù)據(jù)玩家數(shù)量:")
  i = 0
  while i < int(num):
    player_name = input("輸入第" + str(i + 1) + "位玩家名字:")
    play_info = {"name": player_name,
           "score": 0}
    player_list.append(play_info)
    i = i + 1


def throw(player):
  """
  玩家扔骰子,隨機(jī)1-6點(diǎn)
  :param player: 當(dāng)前玩家
  :return:
  """
  points = randint(1,6)

  # 首先判定是否起飛
  if player["score"] == 0 and points == 6:
    player["score"] = 1
    print("%d 點(diǎn),恭喜起飛!當(dāng)前在第%d格" % (points, player["score"]))

  elif player["score"] == 0 and points < 6:
    print("%d 點(diǎn),起飛失??!" % points)
    return
  # 分?jǐn)?shù)大于100,要后退,多幾分退幾步
  elif player["score"] + points > 100:
    player["score"] = player["score"] - (player["score"]+ points) % 100 + 1
    print("%d 點(diǎn),飛過頭了!回到%d格" % (points,player["score"]))
  else:
    player["score"] += points
    print("%d 點(diǎn)!當(dāng)前在第%d格" % (points, player["score"]))


def judge(player):
  global end_flag
  if player["score"] == 100:
    end_flag = 0
    print(player["name"]+"贏了")
    return 1


def hit(player):
  """
  判斷當(dāng)前玩家是否會(huì)將領(lǐng)先的玩家撞回起飛位置
  :param player: 當(dāng)前玩家名字
  """
  for other_player in player_list:
    if player["score"] == other_player["score"] \
        and other_player["name"] != player["name"]:
      other_player["score"] = 0


def speedup(player):
  if player["score"] == 15 or \
      player["score"] == 35 or \
      player["score"] == 85:
    player["score"] += 5
    print("加速5格,當(dāng)前在%d格" % player["score"])


def ironman(player):
  """
  主角光環(huán),名字中含有指定字符的人可以獲得50分加成
  :param player:當(dāng)前玩家的名字
  """
  master = player["name"].count("t")
  if master > 0 and player["score"] == 0:
    player["score"] = 50
    print("- I am Iron Man!賈維斯,先給我加50分。")
    print("- 好的,%s 。當(dāng)前已走到第50格。" % player["name"])
    print("")

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python遍歷文件夾和讀寫文件的實(shí)現(xiàn)方法

    Python遍歷文件夾和讀寫文件的實(shí)現(xiàn)方法

    本篇文章主要介紹了Python遍歷文件夾和讀寫文件的實(shí)現(xiàn)方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • Python實(shí)現(xiàn)的生產(chǎn)者、消費(fèi)者問題完整實(shí)例

    Python實(shí)現(xiàn)的生產(chǎn)者、消費(fèi)者問題完整實(shí)例

    這篇文章主要介紹了Python實(shí)現(xiàn)的生產(chǎn)者、消費(fèi)者問題,簡單描述了生產(chǎn)者、消費(fèi)者問題的概念、原理,并結(jié)合完整實(shí)例形式分析了Python實(shí)現(xiàn)生產(chǎn)者、消費(fèi)者問題的相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • python生成密碼字典詳解

    python生成密碼字典詳解

    大家好,本篇文章主要講的是python生成密碼字典詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • OpenCV 邊緣檢測

    OpenCV 邊緣檢測

    OpenCV提供了許多邊緣檢測濾波函數(shù),這些濾波函數(shù)都會(huì)將非邊緣區(qū)域轉(zhuǎn)為黑色,將邊緣區(qū)域轉(zhuǎn)為白色或其他飽和的顏色。這篇文章主要介紹了OpenCV 邊緣檢測,需要的朋友可以參考下
    2019-07-07
  • 使用Python實(shí)現(xiàn)圖像LBP特征提取的操作方法

    使用Python實(shí)現(xiàn)圖像LBP特征提取的操作方法

    LBP特征叫做局部二值模式,常用于紋理特征提取,并在紋理分類中具有較強(qiáng)的區(qū)分能力,本文給大家介紹了如何使用Python實(shí)現(xiàn)圖像LBP特征提取的操作方法,需要的朋友可以參考下
    2025-04-04
  • Python基于opencv調(diào)用攝像頭獲取個(gè)人圖片的實(shí)現(xiàn)方法

    Python基于opencv調(diào)用攝像頭獲取個(gè)人圖片的實(shí)現(xiàn)方法

    今天小編就為大家分享一篇關(guān)于Python基于opencv調(diào)用攝像頭獲取個(gè)人圖片的實(shí)現(xiàn)方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • 詳解利用python-highcharts庫繪制交互式可視化圖表

    詳解利用python-highcharts庫繪制交互式可視化圖表

    本文主要和大家分享一個(gè)超強(qiáng)交互式可視化繪制工具-python-highcharts。python-highcharts就是使用Python進(jìn)行Highcharts項(xiàng)目繪制,簡單的說就是實(shí)現(xiàn)Python和Javascript之間的簡單轉(zhuǎn)換層,感興趣的可以了解一下
    2022-03-03
  • Python實(shí)現(xiàn)KPM算法詳解

    Python實(shí)現(xiàn)KPM算法詳解

    大家好,本篇文章主要講的是Python實(shí)現(xiàn)KPM算法詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Python使用lxml庫實(shí)現(xiàn)高效處理XML和HTML

    Python使用lxml庫實(shí)現(xiàn)高效處理XML和HTML

    lxml?是一個(gè)功能強(qiáng)大且高效的庫,它基于?libxml2?和?libxslt?庫,提供了簡潔易用的?API?來處理?XML?和?HTML?文檔,下面小編就來和大家詳細(xì)講講它的具體使用吧
    2025-02-02
  • 對python中UDP,socket的使用詳解

    對python中UDP,socket的使用詳解

    今天小編就為大家分享一篇對python中UDP,socket的使用詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08

最新評論

台安县| 汉川市| 自贡市| 灯塔市| 玉环县| 江阴市| 文水县| 武乡县| 黑水县| 日喀则市| 永德县| 驻马店市| 湛江市| 鄂伦春自治旗| 呼图壁县| 威海市| 海安县| 台南市| 孟津县| 九寨沟县| 昂仁县| 托克逊县| 阳西县| 临潭县| 三台县| 黄梅县| 镇宁| 英超| 宣威市| 将乐县| 德兴市| 鹤峰县| 宝鸡市| 岢岚县| 浦城县| 来宾市| 濉溪县| 泗水县| 启东市| 三明市| 龙海市|