国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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開發十分便捷,這對一些輕量開發場景時非常方便。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 開發板
    +關注

    關注

    26

    文章

    6291

    瀏覽量

    118149
  • EASY-EAI靈眸科技

    關注

    4

    文章

    67

    瀏覽量

    3621
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    EASY EAI Nano-TB(RV1126B)開發試用】介紹、系統安裝

    EASY EAI Nano-TB(RV1126B)開發試用】介紹、系統安裝 本文介紹了靈眸科技 EA
    發表于 12-23 18:05

    EASY EAI Nano-TB(RV1126B)開發試用】+1、開箱上電

    EASY EAI Nano-TB(RV1126B)開發板開箱報告: 1 開箱體驗:精致包裝與豐富配件 EASY
    發表于 11-19 21:39

    EASY EAI Nano-TB(RV1126B)開發試用】1、初識

    非常感謝電子發燒友以及靈眸科技給了我這次試用EASY EAI Nano-TB(RV1126B)開發板的機會,星期四確認了我的
    發表于 11-16 11:15

    EASY EAI Nano-TB(RV1126B)開發試用】命令行功能測試-shell腳本進行IO控制-燈閃

    接上文【EASY EAI Nano-TB(RV1126B)開發試用】開箱測評 https://pan.baidu.com/s/15pnbJ
    發表于 11-01 21:26

    EASY EAI Nano-TB(RV1126B)開發試用】開箱測評

    。 。 開發板卡 | EASY EAI Nano-TB(RV1126B)開發套件是靈眸科技研發的一款應用于AIoTl領域的核心板,并配有
    發表于 11-01 11:05

    EASY EAI Nano-TB(RV1126B)開發試用】+初識篇

    EASY EAI Nano-TB(RV1126B)開發套件是靈眸科技研發的一款應用于AIoTl領域的核心板,并配有十分豐富的外設資源,以此為基礎便于快速進入學習和
    發表于 10-25 22:06

    【免費試用EASY EAI Nano-TB(RV1126B)開發套件評測

    EASY-EAI-Nano-TB是靈眸科技研發的一款應用于AIoT領域的AIOT主板。核心板基于瑞芯微的RV1126B處理器設計,并引入了新一代完全基于硬件的最大12M像素ISP(圖像信號處理器
    的頭像 發表于 09-23 08:09 ?1050次閱讀
    【免費<b class='flag-5'>試用</b>】<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b> <b class='flag-5'>Nano</b>-TB(RV1126B)<b class='flag-5'>開發套件</b>評測

    【作品合集】靈眸科技EASY EAI Orin Nano(RK3576)開發板測評

    板免費試用 作者:華仔stm32【EASY EAI Orin Nano(RK3576)開發試用
    發表于 09-09 09:59

    EASY EAI Orin Nano開發試用體驗】EASY-EAI-Toolkit人臉識別

    、編譯與測試 1.組件人臉識別代碼如下 2.開發板掛載服務器,編譯 掛載上服務器后,切換到EASY-EAI-Toolkit-3576/Demos/algorithm-face_detect/路徑下
    發表于 07-20 14:40

    EASY EAI Orin Nano開發試用體驗】人臉識別提升

    【前言】【新提醒】【EASY EAI Orin Nano開發試用體驗】人臉識別體驗 - EASY
    發表于 07-05 15:21

    EASY EAI Orin Nano開發試用體驗】EASY-EAI-Toolkit初體驗

    本次EASY EAI Orin Nano開發試用體驗主要是超級想體驗靈眸的EASY-EAI-T
    發表于 06-28 21:21

    EASY EAI Orin Nano開發試用體驗】人臉識別體驗

    | 10.92 MiB/s, 完成. 處理 delta 中: 100% (77/77), 完成. 2、adb登錄開發板,并加載nfs developer@EASY-EAI-Develop:~/nfsroot
    發表于 06-26 06:54

    EASY EAI Orin Nano開發試用體驗】--開發板開箱了解

    感謝靈眸科技與論壇提供的開發板與平臺。EASY EAI Orin-Nano開發板實物如下: EASY
    發表于 06-25 23:32

    EASY EAI Orin Nano開發試用體驗】安裝nfs服務器

    /developer/nfsroot * developer@EASY-EAI-Develop:~$ 測試: 使用typec連上開發板后,執行adb shell登錄開發板。 在Desktop中創建nfs 然后
    發表于 06-22 17:32

    EASY EAI Orin Nano開發試用體驗】開發環境準備

    【前言】 首先感謝電子發燒友論壇以及靈眸科技給示了我這次非常難得的【EASY EAI Orin Nano開發試用體驗】的機會,在進行評測之
    發表于 06-22 16:42