当前位置: 首页 > news >正文

15个学习Python 的编程游戏网站

从小很多人都会在想,那些枯燥的教学课程要是全部变成游戏就好了,这样的话那期末成绩不得立即起飞了嘛?那对于编程很多人也有这样的想法,边玩边学就好了

这不已经有很多程序员开发了多款边玩边学的编程游戏供大家使用,下面分享网络上常提到的15款编程游戏网站。来看看有没有你你的菜

1、Coding Games
一边玩游戏,一边挑战编程难题。Coding games 支持包括 PHP、C、JavaScript 在内的 20 多种编程语言。用户界面功能强大,可以定制。

例如,你可以选择你的代码编辑器的风格:Emacs、Vim、Classic。

如果你想提升编程技能,玩 Coding games 是一种有趣的途径。

网址:www.codingame.com

2、CodeCombat(极客战记)
CodeCombat 是一款网页编程游戏。这款编程游戏借鉴了游戏的很多设计元素,游戏剧情十分丰富。

当你打开 CodeCombat 网站,你不会觉得这是一个让你看不懂的代码学习网站,因为他的网站外观看起来就像是一个魔兽争霸风格的线上游戏,而且当你实际玩玩看,你会发现过程真的就是英雄要去打怪、寻宝与解谜,只是搭配了程序语言的学习。

CodeCombat 能够学习 Python、JavaScript、Lua、CoffeeScript、Clojure 等不同程序语言,这些语言能够运用到游戏设计、网页应用、App 的开发上。

CodeCombat 网址:cn.codecombat.com

极客战记(中国版 CodeCombat)网址:codecombat.163.com

3、Screeps
如果你想学习 JavaScript,那 Screeps 是一个很好的选择,Screeps 是一个为 JavaScript 程序员准备的大型多人在线游戏 (MMO)。

这个游戏是一个开放的策略游戏,游戏中你控制的单位被称为 “creeps”,它可以帮你获得资源、建立自己的领地等等。作为一个多人在线游戏,游戏中你的 creeps 会被其他玩家的 creeps 包围。

网址:screeps.com

4、Checkio
Check iO 是一个基于浏览器的游戏,你需要使用 Python 或 JavaScript 来解决问题才能将游戏进行下去(需要登录)。

网址:checkio.org

5、Vim Adventures
顾名思义,这个网站让你通过玩游戏来学习 Vim。

网址:vim-adventures.com

6、Cyber Dojo
Cyber-dojo是一个提供给程序员们练习写程序的地方。支持 JavaScript、Java、Python、PHP、Ruby 等语言。

网址:www.cyber-dojo.org/

源代码:https://github.com/JonJagger/cyber-dojo

7、Code Monkey
CodeMonkey 是一款非常富有童趣的网页编程游戏,玩家通过编程向怪兽小猴子传达指令,帮助小猴子吃到香蕉就可以过关了。

CodeMonkey 以游戏闯关的方式进行教学,总共有 300 多个关卡,涉及到编程的各种概念。

网址: www.playcodemonkey.com

8、Elevator Saga
电梯编程游戏,需要一步步解决问题过关。比如说第一关是在 60 秒内运输 15 个人。( 编程语言为 JavaScript )

网址: play.elevatorsaga.com/

代码:https://github.com/magwo/elevatorsaga

9、Codewars
在战斗中进行学习。和其他人一起在真实的编程挑战中提升技巧,支持 JavaScript、Python、C#、Java、Python 等语言(支持的语言见下图)。

网址:www.codewars.com

10、Ruby Quiz
Ruby Quiz 是一个面向 Ruby 程序员的每周编程挑战项目,目前有 156 个测验项目。

网址:rubyquiz.com/

11、Git-Game
Git-game 是一个基于终端的游戏,它用来教授 git 中的那些非常酷的功能。游戏的主题内容是搜寻,通过 git 命令来找到线索,解开谜题。

网址:www.git-game.com

12、Hacker.org
hacker.org 挑战赛是一系列的拼图、敲砖块、测试和智力题,用来测试你的黑客能力。要通过这一系列的考验,你需要学会解密、编码、渗透等等技能,揭开重重迷雾。

网址: hacker.org - The Hacker Community Online

13、Code Hunt
Code Hunt 是一个由 Microsoft Research 开发的 HTML5 科幻主题游戏。在这个游戏中,你扮演一个代码猎人,负责修复代码,并使它它返回预期的结果。Code Hunt 支持 Java 和 C# 两种语言。你可以学习到包括算法、循环和条件表达式等编程概念。

网址:www.codehunt.com

14、Fight Code
在 FightCode 中,通过编写 JavaScript 代码,你可以创建一个能够击败其他玩家机器人的机器人。

网址: http://fightcode.io

15、Human Resource Machine
Human Resource Machine 是一款非常有意思的移动端游戏。这款游戏由粘粘世界(World of Goo)的设计者和制作小小炼狱(Little Inferno)的团队共同制作,游戏虽是走解谜路线,但玩法相当新颖:玩家将扮演一个从基层做起的员工,需要通过指令代码来编写一条条程序,完成每个阶段的任务,最终走上职场巅峰。

主人公需要将邮件按照要求进行分发。游戏注重计算机硬件实现方面的技术。在游戏中非常形象的表现出了内存,寄存器,输入输出等概念,以及如何利用这些硬件来实现基本的运算、排序等功能。

这款游戏界面十分有意思,画风清奇,任务具有较大的挑战性,适合有一定编程基础或者年龄稍大的孩子玩。

网址: tomorrowcorporation.com

其他类似的编程游戏网站
CodeChef :在这里你可以解决实际问题、参加不同的比赛,这些比赛每月都会进行。

Pex for fun :这是微软开发的一个游戏,在这个游戏中你需要和其他的程序员进行比拼。而代码就是你的武器。

Rankk :你需要解决一系列由易到难的问题。这个游戏是对 Pyramid 游戏的复刻,Pyramid 里面有很多逻辑和数学问题。

TopCoder :在这个游戏里你不光可以解决问题,还可以获取真金白银。来自全世界知名IT公司的程序员在这里互相挑战,为的就是赢得他们的奖品。

Google Code Jam :Google 大赛上已经解决的算法问题。在这里你可以自己试一试。

Python Challenge:玩家可以通过 Python 编程解决问题并提升等级。

Lumosity :一组能够训练大脑的游戏,由科学家和游戏设计师一同开发。

Algorithm Geeks :一个交流讨论算法的 Google 群组。

CodeKata :妙趣横生的编程问题。

LessThanDot :一个专门论坛,程序员在这里发布一些比较困难的编程挑战。

The Daily WTF :类似 BYOD(Bring Your Own Device) 模式,不过这里是 BYOD(Bring Your Own Code) 程序员们编写他们自己的代码片段放在这里,用来解决一些比较困难的问题。

Peking University JudgeOnline for ACIP/ICPC :这里包含了不同比赛中涉及到的不同的问题。你可以实时的解决问题并且查看结果,你的答案也会被验证是否正确。

University of Valladolid Online Judge :与北京大学 OJ 平台类似,但是包含了不同的问题。

Programming Praxis:这个博客每周都会出一些新的编程问题。

Project Euler :包含了很多复杂的数学问题,这让发烧友们感到非常开心。

4Clojure :在这里你可以通过解决一些不同难易程度的问题来学习 Clojure 。

Prolog Problems :你可以在这里练习逻辑编程。

Codingbat :有很多 Java 和 Python 的习题(难度各有不同)。

Sphere Online Judge :各种各样的编程问题。

Rosalind :通过解决实际问题来学习算法和生物信息学。

LeetCode :这个网站是为了帮助程序员准备面试而创建的。在这里你可以找到不同领域的典型问题。

Career Cup :程序员面试时最容易被问到的真实问题。

Kodable:Kodable 是一款适用于 5 岁及以上儿童的教育型 iPad 游戏,适合为儿童进行编程启蒙。

Lightbot :Lightbot 是一款移动端游戏,玩家通过控制机器人的移动在固定位置点亮灯泡。

Box Island:Box Island 是一款经典且屡获殊荣的移动端编程冒险游戏,这款游戏在为孩子们带来令人兴奋的冒险体验的同时, 也向他们介绍编程的基础知识。

以上就是一些适合学习 Python 的网站,你有玩过几款呢?

相关文章:

15个学习Python 的编程游戏网站

从小很多人都会在想,那些枯燥的教学课程要是全部变成游戏就好了,这样的话那期末成绩不得立即起飞了嘛?那对于编程很多人也有这样的想法,边玩边学就好了 这不已经有很多程序员开发了多款边玩边学的编程游戏供大家使用,…...

微信小程序实现拖拽盒子效果

要实现一个当前盒子高度由里面的盒子进行支配高度拖拽的效果 // wxml<view class"exmation-item" wx:elif"{{type4}}"> <view class"exmation-item-drag-box" id"drag-box"> <!-- 内容 --><view class"exm…...

Linux-蓝牙协议

SPP (Serial Port Profile): 串口协议&#xff08;SPP&#xff09;是一个蓝牙配置文件&#xff0c;允许设备通过蓝牙模拟传统的串行端口通信。它通常用于无线串口连接&#xff0c;允许设备如计算机和外设&#xff08;例如打印机或条形码扫描器&#xff09;之间进行数据传输。A…...

moviepy 将mp4视频文件提取音频mp3 - python 实现

DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加中。 需要更多数据资源和技术解决方案&#xff0c;知识星球&#xff1a; “DataBall - X 数据球(free)” -------------------------------------------------------------…...

imageio 图片转mp4 保存mp4

目录 安装&#xff1a; imageio 图片转mp4 numpy 保存mp4 安装&#xff1a; FFMPEG: pip install imageio[ffmpeg] pyav: pip install imageio[pyav] imageio 图片转mp4 import glob import osimport cv2 import imageio from natsort import natsortedfrom PIL import …...

Postman接口测试04|批量运行测试用例、参数化、Mock Server、Cookie鉴权、Newman生成测试报告

目录 十一、Postman批量运行测试用例 十二、实现数据驱动&#xff08;也称参数化&#xff09; 1、csv文件 1️⃣编辑csv文件 2️⃣更新参数的值 3️⃣修改测试脚本和断言 5️⃣批量运行测试用例 2、Json文件 1️⃣编辑Json文件 2️⃣其他操作和处理csv文件相同 十三、…...

学技术学英语:http状态码 401 Unauthorized vs 403 Forbidden

&#x1f4e2;&#x1f4e2;&#x1f4e2;&#xff1a;先看关键单词&#xff0c;再看英文&#xff0c;最后看中文总结&#xff0c;再回头看一遍英文原文&#xff0c;效果更佳&#xff01;&#xff01; 关键词 unauthorized未授权的/ˌʌnˈɔːθəraɪzd/authentication认证/…...

@LocalBuilder装饰器: 维持组件父子关系

一、前言 当开发者使用Builder做引用数据传递时&#xff0c;会考虑组件的父子关系&#xff0c;使用了bind(this)之后&#xff0c;组件的父子关系和状态管理的父子关系并不一致。为了解决组件的父子关系和状态管理的父子关系保持一致的问题&#xff0c;引入LocalBuilder装饰器。…...

React(二)——Admin主页/Orders页面/Category页面

文章目录 项目地址一、侧边栏1.1 具体实现 二、Header2.1 实现 三、Orders页面3.1 分页和搜索3.2 点击箭头显示商家所有订单3.3 页码按钮以及分页 四、Category页面4.1 左侧商品添加栏目4.2 右侧商品上传栏 五、Sellers页面六、Payment Request 页面&#xff08;百万数据加载&a…...

移动端屏幕分辨率rem,less

谷歌模拟器&#xff1a;能直接看到移动端效果 屏幕分辨率 右键电脑桌面 &#xff0c;点击显示设置 PC端是逻辑分辨率&#xff0c;移动端代码也是参考逻辑分辨率 网页端宽度和逻辑分辨率尺寸相同 手机屏幕尺寸不同&#xff0c;网页宽度均为 100% 所以就需要添加视口标签&#x…...

Docker Desktop 构建java8基础镜像jdk安装配置失效解决

Docker Desktop 构建java8基础镜像jdk安装配置失效解决 文章目录 1.问题2.解决方法3.总结 1.问题 之前的好几篇文章中分享了在Linux(centOs上)和windows10上使用docker和docker Desktop环境构建java8的最小jre基础镜像&#xff0c;前几天我使用Docker Desktop环境重新构建了一个…...

数据结构:栈(Stack)和队列(Queue)—面试题(一)

目录 1、括号匹配 2、逆波兰表达式求值 3、栈的压入、弹出序列 4、最小栈 1、括号匹配 习题链接https://leetcode.cn/problems/valid-parentheses/description/ 描述&#xff1a; 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] …...

AR 眼镜之-拍照/录像动效切换-实现方案

目录 &#x1f4c2; 前言 AR 眼镜系统版本 拍照/录像动效切换 1. &#x1f531; 技术方案 1.1 技术方案概述 1.2 实现方案 1&#xff09;第一阶段动效 2&#xff09;第二阶段动效 2. &#x1f4a0; 默认代码配置 2.1 XML 初始布局 2.2 监听滑动对 View 改变 3. ⚛️…...

2025年中科院分区大类划分公布!新增8155本

2025年中科院分区表变更情况 扩大收录范围 2025年的期刊分区表在原有的自然科学&#xff08;SCIE&#xff09;、社会科学&#xff08;SSCI&#xff09;和人文科学&#xff08;AHCI&#xff09;的基础上&#xff0c;增加了ESCI期刊的收录&#xff0c;并根据这些期刊的数据进行…...

S变换matlab实现

S变换函数 function [st,t,f] st(timeseries,minfreq,maxfreq,samplingrate,freqsamplingrate) % S变换 % Code by huasir Beijing 2025.1.10 % Reference is "Localization of the Complex Spectrum: The S Transform" % from IEEE Transactions on Signal Proc…...

Springboot——钉钉(站内)实现登录第三方应用

文章目录 前言准备1、创建钉钉应用&#xff0c;并开放网页应用2、配置网页应用各项参数发布版本 前端改造后端逻辑1、获取应用免登录 Access_token2、通过免登录 Access_token 和 Auth_Code 获取对应登录人信息 注意事项 前言 PC端的钉钉中工作台&#xff0c;增加第三方应用&a…...

基于深度学习算法的AI图像视觉检测

基于人工智能和深度学习方法的现代计算机视觉技术在过去10年里取得了显著进展。如今&#xff0c;它被广泛用于图像分类、人脸识别、图像中物体的识别等。那么什么是深度学习&#xff1f;深度学习是如何应用在视觉检测上的呢&#xff1f; 什么是深度学习&#xff1f; 深度学习是…...

cJson——序列化格式json和protobuf对比

cJson——序列化格式json和protobuf对比 1. 更小的消息体积2. 更快的序列化与反序列化速度3. 类型安全4. 向后和向前兼容性5. 更低的带宽消耗6. 高效的编码方式7. 易于跨语言支持8. 支持复杂的数据结构9. 更好的支持大型数据交换总结 Protocol Buffers (Protobuf) 和 JSON 都是…...

搭建一个fastapi的项目,调用ollama服务

1. 项目结构 my_project/ │ ├── app/ │ ├── main.py # FastAPI应用的入口 │ ├── services/ # 包含服务逻辑 │ │ └── ollama_service.py │ ├── models/ # 定义数据模型 │ │ └── response.py │ ├─…...

Wireshark编译手册(Windows)

以下是对 Wireshark 官方文档中“Windows 平台的设置和构建说明”部分的翻译和总结&#xff1a; 2.2. Windows 平台 本节提供了在 Windows 上进行 Wireshark 开发的快速设置指南&#xff0c;包含推荐的配置。 2.2.1. 使用 Microsoft Visual Studio 注意&#xff1a;除非您非…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!

5月28日&#xff0c;中天合创屋面分布式光伏发电项目顺利并网发电&#xff0c;该项目位于内蒙古自治区鄂尔多斯市乌审旗&#xff0c;项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站&#xff0c;总装机容量为9.96MWp。 项目投运后&#xff0c;每年可节约标煤3670…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖

在Vuzix M400 AR智能眼镜的助力下&#xff0c;卢森堡罗伯特舒曼医院&#xff08;the Robert Schuman Hospitals, HRS&#xff09;凭借在无菌制剂生产流程中引入增强现实技术&#xff08;AR&#xff09;创新项目&#xff0c;荣获了2024年6月7日由卢森堡医院药剂师协会&#xff0…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

MySQL 主从同步异常处理

阅读原文&#xff1a;https://www.xiaozaoshu.top/articles/mysql-m-s-update-pk MySQL 做双主&#xff0c;遇到的这个错误&#xff1a; Could not execute Update_rows event on table ... Error_code: 1032是 MySQL 主从复制时的经典错误之一&#xff0c;通常表示&#xff…...

使用SSE解决获取状态不一致问题

使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件&#xff0c;这个上传文件是整体功能的一部分&#xff0c;文件在上传的过程中…...