女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【EASY EAI Nano開源套件試用體驗】開發環境之Python2048小游戲

開發板試用精選 ? 來源:開發板試用 ? 作者:電子發燒友論壇 ? 2022-10-11 16:05 ? 次閱讀
本文來源電子發燒友社區,作者:李先生, 帖子地址:https://bbs.elecfans.com/jishu_2308793_1_1.html


前言
開發板具備Python運行環境,這對于一些輕量開發可以直接在開發板上進行腳本開發,這就十分方便。python --version可以看到版本是2.7.16。
[root@EASY-EAI-NANO:/]# python --version
Python 2.7.16

過程
直接SSH或者串口登錄,
導入2048.py或者
直接vi編輯


  1. # -*- coding:UTF-8 -*-
  2. #!/usr/bin/python2
  3. import random
  4. import os, sys
  5. v = [[0, 0, 0, 0],
  6. [0, 0, 0, 0],
  7. [0, 0, 0, 0],
  8. [0, 0, 0, 0]]
  9. def display(v, score):
  10. print ("%4d %4d %4d %4d" % (v[0][0], v[0][1], v[0][2], v[0][3]))
  11. print ("%4d %4d %4d %4d" % (v[1][0], v[1][1], v[1][2], v[1][3]))
  12. print ("%4d %4d %4d %4d" % (v[2][0], v[2][1], v[2][2], v[2][3]))
  13. print ("%4d %4d %4d %4d" % (v[3][0], v[3][1], v[3][2], v[3][3]))
  14. print ("Total score: %d" % score)
  15. def init(v):
  16. for i in range(4):
  17. v[i] = [random.choice([0, 0, 0, 2, 2, 4]) for x in range(4)]
  18. def align(vList, direction):
  19. for i in range(vList.count(0)):
  20. vList.remove(0)
  21. zeros = [0 for x in range(4 - len(vList))]
  22. if direction == 'left':
  23. vList.extend(zeros)
  24. else:
  25. vList[:0] = zeros
  26. def addSame(vList, direction):
  27. score = 0
  28. if direction == 'left':
  29. for i in [0, 1, 2]:
  30. align(vList, direction)
  31. if vList[i] == vList[i+1] != 0:
  32. vList[i] *= 2
  33. vList[i+1] = 0
  34. score += vList[i]
  35. return {'bool':True, 'score':score}
  36. else:
  37. for i in [3, 2, 1]:
  38. align(vList, direction)
  39. if vList[i] == vList[i-1] != 0:
  40. vList[i] *= 2
  41. vList[i-1] = 0
  42. score += vList[i]
  43. return {'bool':True, 'score':score}
  44. return {'bool':False, 'score':score}
  45. def handle(vList, direction):
  46. totalScore = 0
  47. align(vList, direction)
  48. result = addSame(vList, direction)
  49. while result['bool'] == True:
  50. totalScore += result['score']
  51. align(vList, direction)
  52. result = addSame(vList, direction)
  53. return totalScore
  54. def operation(v):
  55. totalScore = 0
  56. gameOver = False
  57. direction = 'left'
  58. op = raw_input ('operator:')
  59. if op in ['a','A']:
  60. direction = 'left'
  61. for row in range(4):
  62. totalScore += handle(v[row], direction)
  63. elif op in ['d','D']:
  64. direction = 'right'
  65. for row in range(4):
  66. totalScore += handle(v[row], direction)
  67. elif op in ['w', 'W']:
  68. direction = 'left'
  69. for col in range(4):
  70. vList = [v[row][col] for row in range(4)]
  71. totalScore += handle(vList, direction)
  72. for row in range(4):
  73. v[row][col] = vList[row]
  74. elif op in ['s', 'S']:
  75. direction = 'right'
  76. for col in range(4):
  77. vList = [v[row][col] for row in range(4)]
  78. totalScore += handle(vList, direction)
  79. for row in range(4):
  80. v[row][col] = vList[row]
  81. else:
  82. print ("Invalid raw_input ,please enter a charactor in [W,S,A,D] or the lower")
  83. gameOver = True
  84. return {'gameOver':gameOver,'score':totalScore}
  85. N = 0
  86. for q in v:
  87. N += q.count(0)
  88. if N == 0:
  89. gameOver = True
  90. return {'gameover':gameOver,'score':totalScore}
  91. num = random.choice([2,2,2,4])
  92. k = random.randrange(1, N+1)
  93. n = 0
  94. for i in range(4):
  95. for j in range(4):
  96. if v[i][j] == 0:
  97. n += 1
  98. if n == k:
  99. v[i][j] = num
  100. break
  101. return {'gameOver':gameOver, 'score':totalScore}
  102. init(v)
  103. score = 0
  104. print ("raw_input :W(Up) S(Down) A(Left) D(Right), press.")
  105. while True:
  106. os.system("clear")
  107. display(v, score)
  108. result = operation(v)
  109. print (result)
  110. if result['gameOver'] == True:
  111. print ("Game Over, You failed!")
  112. print ("Your total score %d" % (score))
  113. sys.exit(1)
  114. else:
  115. score += result['score']
  116. if score >= 2048:
  117. print ("Game Over, You Win!!!")
  118. print ("Your total score: %d" % (score))
  119. sys.exit(0)
復制代碼


添加可執行權限
chmod +x 2048.py
運行

python 2048.py
分別用wsad控制上下左右移動
pYYBAGM-5QqAUjlKAABhWaa--6o016.png
總結
開發板提供了Python環境,直接開發板上進行Python開發十分便捷,這對一些輕量開發場景時非常方便。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 開發板
    +關注

    關注

    25

    文章

    5532

    瀏覽量

    102424
  • 靈眸
    +關注

    關注

    0

    文章

    19

    瀏覽量

    3283
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    2025電子發燒友開發板評測大賽開啟!三大賽道火力全開,頂級開發板等你來戰!

    套件免費試用https://bbs.elecfans.com/try_SEEK100.html 【OH專題】潤開鴻HH-SCDAYU800A開發板免費試用https
    發表于 05-15 15:09

    89元起!開源國產FPGA開發套件,提供原理圖及配套參考例程的源代碼

    產品詳情MES2KG開發板是一套基于紫光FPGA的開發套件,以紫光Compact系列PGC2KG-LPG100器件為核心,預留豐富的擴展IO及數碼管、按鍵、LED燈,為用戶提供基本的硬件環境,并且
    的頭像 發表于 05-13 08:07 ?146次閱讀
    89元起!<b class='flag-5'>開源</b>國產FPGA<b class='flag-5'>開發套件</b>,提供原理圖及配套參考例程的源代碼

    基于RK3576開發板的聲卡資源介紹

    EASY-EAI-Orin-Nano有2塊聲卡:card0、card1。關于它們的詳細描述,如下圖所示。
    的頭像 發表于 05-06 16:26 ?279次閱讀
    基于RK3576<b class='flag-5'>開發</b>板的聲卡資源介紹

    基于RK3576開發板的HDMI-OUT使用

    EASY EAI Orin-Nano的HDMI OUT接口支持2.1協議,并且向下兼容2.0,1.4。具體分辨率與幀率,可對接入的屏幕進行自適應。
    的頭像 發表于 05-06 15:59 ?216次閱讀
    基于RK3576<b class='flag-5'>開發</b>板的HDMI-OUT使用

    基于RK3576開發板的遠程桌面調試方法

    EASY EAI Orin-Nano可以基于MobaXterm的ssh遠程桌面登錄調試
    的頭像 發表于 05-06 09:58 ?139次閱讀
    基于RK3576<b class='flag-5'>開發</b>板的遠程桌面調試方法

    基于RV1126開發板的resnet50訓練部署教程

    本教程基于圖像分類算法ResNet50的訓練和部署到EASY-EAI-Nano(RV1126)進行說明
    的頭像 發表于 04-18 15:07 ?342次閱讀
    基于RV1126<b class='flag-5'>開發</b>板的resnet50訓練部署教程

    基于RV1126開發板的rknn-toolkit-lite使用方法

    rknn-toolkit-lite是用于python算法的推理的組件,當前已經在EASY-EAI-Nano完成適配,用戶可以用它進行深度學習算法的純python開發。而且同時支持已經進
    的頭像 發表于 04-15 17:33 ?289次閱讀
    基于RV1126<b class='flag-5'>開發</b>板的rknn-toolkit-lite使用方法

    基于RV1126開發板的啟動Logo更換方法

    EASY EAI Nano固件內擁有2個logo,分別用于uboot階段顯示,以及kernel(內核)階段顯示。
    的頭像 發表于 04-15 10:36 ?198次閱讀
    基于RV1126<b class='flag-5'>開發</b>板的啟動Logo更換方法

    RK3576 yolov8訓練部署教程

    本章展示yolov8模型的在EASY EAI Orin nano的部署過程。
    的頭像 發表于 04-02 16:04 ?341次閱讀
    RK3576 yolov8訓練部署教程

    如何安裝模擬器玩nes小游戲-基于米爾瑞芯微RK3576開發

    本篇源自:優秀創作者 小手涼涼本文將介紹基于米爾電子MYD-LR3576開發板(米爾基于瑞芯微 RK3576開發板)的安裝模擬器玩nes小游戲方案測試。 核心板系統 操作系統鏡像文件說明
    發表于 02-08 12:10

    NVIDIA發布小巧高性價比的Jetson Orin Nano Super開發套件

    NVIDIA近期推出了一款全新的生成式AI超級計算機——Jetson Orin Nano Super開發套件。這款開發套件以其小巧的尺寸
    的頭像 發表于 12-19 11:28 ?992次閱讀

    FPGA打磚塊小游戲設計思路

    HDL,?Vivado 平臺上開發打磚塊小游戲并使用 PS2 與 VGA 的基本思路: 一、整體架構設計 1. 輸入模塊: ? PS2 接口模塊:負責與 PS2 設備(如游戲手柄)進行通信,接收手柄
    的頭像 發表于 12-09 16:57 ?798次閱讀

    【星閃派物聯網開發套件體驗連載】+環境監測

    如下圖所示: WS63控制板如下圖所示: 套件和WS63E控制板如下圖所示: 各個模塊都是常見的模塊,在此不一一介紹了。 開發環境搭建 開發
    發表于 10-09 22:27

    【xG24 Matter開發套件試用體驗】1-基本情況介紹

    參加[Silicon Labs xG24 Matter開發套件免費試用]活動,拿到了期待的EFR32xG24 Explorer 開發套件(一個基于 EFR32MG24 片上系統的小封裝開發
    發表于 07-17 12:39

    JH-7110 RISC-V開發套件正式開源

    近日,賽昉科技在RVspace生態社區正式開源昉·驚鴻-7110(JH-7110)DevKit開發套件,同時提供其原理圖和PCB參考設計源文件,旨在為客戶提供全面的RISC-V芯片平臺
    的頭像 發表于 06-15 08:19 ?937次閱讀
    JH-7110 RISC-V<b class='flag-5'>開發套件</b>正式<b class='flag-5'>開源</b>