美国20世纪最重要的实用主义哲学家约翰·杜威提出一个学习方法,叫做:Learning By Doing,在实践中精进。胡适、陶行知、张伯苓、蒋梦麟等都曾是他的学生,杜威的哲学也影响了蔡元培、晏阳初等人。

实验楼以此理念为核心,设计了许多的学习项目,通过动手实践来攻克知识难点,并且比看书看视频更加具有趣味性;希望大家可以试一试。

  1. Python 破解验证码
    通过一个简单的例子来实现破解验证码。从中我们可以学习到 Python 基本知识,PIL 模块的使用和破解验证码的原理。

2. Python 图片转字符画
用 50 行 Python 代码完成图片转字符画小工具。通过本实验将学习到 Linux 命令行操作,Python 基础,pillow 库的使用,argparse 库的使用。

3. Python3 实现色情图片识别
使用 Python3 去识别图片是否为色情图片,我们会使用到 PIL 这个图像处理库,会编写算法来划分图像的皮肤区域。其中涉及到Python3 基础知识,肤色像素检测与皮肤区域划分算法,Pillow 及argparse 的使用。

4. Python3 图片隐写术
通过Python3实现将关键信息隐藏在图片的效果,主要目的是为了不让预期接收者以外的人知晓传递的内容。与电视剧中使用特殊墨水传递信息一样,表面看就是一张什么都没写的白纸,实则暗藏着重要信息。

5. 200 行 Python 代码实现 2048
仅用200行的 python 代码完成2048小游戏的编写。通过本实验将学习 Python 基本知识,状态机的概念,以及编写 python 游戏的步骤。

6. Python文本解析器
使用 Python 来解析纯文本生成 HTML 页面的小程序。从中我们将使用Python基础语法知识以及HTML标记语言知识,以及如何用 Python 将纯文本分成一个一个的文本块,并对它对解析。文本中使用部分简单的 Markdown 语法。通过学习加深巩固Python、HTML的基础知识。

7. Python实现3D建模工具
基于OpenGL实现一般CAD软件都会具备的基础功能:渲染显示3D空间的画面并可以操作3D空间中物体。

8. Python实现模板引擎
模版引擎使得用户界面能够与业务数据分离,前端与后端分离,它通常用于渲染页面文件。本课程将使用Python实现一个具备基础功能的模板引擎。

9. Python3 & OpenCV 视频转字符动画
使用 OpenCV 处理图片视频,将视频转为字符画序列,再在终端中播放字符动画。除了 OpenCV 的操作,还会了解光标定位转义编码的使用。

10. 使用 Python 定制词云
使用 Python3 的 wordcloud 扩展包制作词云,并通改进 wordcloud 使其能够制作中文词云。此外,还将分享如何用自己喜欢的图片作为词云轮廓对词云进行定制。

相关阅读

20个Java练手项目,献给嗜学如狂的人

大牛推荐的10本学习 Python 的好书

别再说找不到Python练手项目了,这80个拿去过冬

40个大数据学习资源

PHP学习资源整理:入门到进阶全系列

8个程序员专用软件/网站,个个是神器,第一个最惊喜......

Java进阶之设计模式

Scala 开发教程

Hadoop部署及管理

RabbitMQ 消息队列

Redis基础教程

Shell脚本实现打字游戏

Python3 实现色情图片识别

10个Python基础练习项目,你可能不会想到练手教程还这么有趣的更多相关文章

  1. python实现列表页数据的批量抓取练手练手的

    python实现列表页数据的批量抓取,练手的,下回带分页的 #!/usr/bin/env python # coding=utf-8 import requests from bs4 import B ...

  2. 2015/10/9 Python基础(21):可调用和可执行对象

    在Python中有多种运行外部程序的方法,比如,运行操作系统命令或另外的Python脚本,或执行一个磁盘上的文件,或通过网络来运行文件.这完全取决于想要干什么.特定的环境包括: 在当前脚本继续运行 创 ...

  3. Go - 开箱即用,WEB 界面一键安装,没有项目经验,可以拿这个练手

    安装界面 启动程序之后,会在浏览器中自动打开安装界面. 因为程序会使用到 Redis 和 MySQL,所以安装前请输入 Redis.MySQL 配置信息,点击初始化按钮,会将用到的数据表和默认数据进行 ...

  4. Java 教程整理:基础、项目全都有

    Java 在编程语言排行榜中一直位列前排,可知 Java 语言的受欢迎程度了. 网上有很多 Java 教程,无论是基础入门还是开发小项目的教程都比比皆是,可是系统的很少,对于Java 学习者来说找到系 ...

  5. Java学习路径及练手项目合集

    Java 在编程语言排行榜中一直位列前排,可知 Java 语言的受欢迎程度了. 实验楼上的[Java 学习路径]中将首先完成 Java基础.JDK.JDBC.正则表达式等基础实验,然后进阶到 J2SE ...

  6. 老王Python培训视频教程(价值500元)【基础进阶项目篇 – 完整版】

    老王Python培训视频教程(价值500元)[基础进阶项目篇 – 完整版] 教学大纲python基础篇1-25课时1.虚拟机安装ubuntu开发环境,第一个程序:hello python! (配置开发 ...

  7. 这10个Python项目超有趣!

    前言: Python可谓是现在很多人正在学或者想学的一个脚本语言了,提到学习自然就少不了拿项目练手,可是一般的项目根本提不起兴趣嘛,这10个项目可是非常有趣的,不信你看看. [Python 图片转字符 ...

  8. 10个有趣的Python教程,附视频讲解+练手项目。

    从前的日色变得慢,车.马.邮件都慢 一生只够爱一门编程语言 从前的教程也好看,画面精美有样子 你看了,立马就懂了 Python最性感的地方,就在于它的趣味性和前沿性,学习Python,你总能像科技节的 ...

  9. 『Python基础-10』字典

    # 『Python基础-10』字典 目录: 1.字典基本概念 2.字典键(key)的特性 3.字典的创建 4-7.字典的增删改查 8.遍历字典 1. 字典的基本概念 字典一种key - value 的 ...

随机推荐

  1. 关于 win10 系统中 Anaconda3 中修改 Jupyter Notebook 默认启动目录

    目标: 修改Anaconda3中自带的Jupyter Notebook默认启动目录. 步骤:     1.提前创建好你想要启动位置文件夹.     2.寻找配置文件,"jupyter_not ...

  2. java实验5

    实验一要求: 两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA 结对实现中缀表达式转后缀表达式的功能 MyBC.java ...

  3. Maven中pom.xml文件的配置

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  4. k个一组翻转链表

    给出一个链表,每 k 个节点一组进行翻转,并返回翻转后的链表. k 是一个正整数,它的值小于或等于链表的长度.如果节点总数不是 k 的整数倍,那么将最后剩余节点保持原有顺序. 示例 : 给定这个链表: ...

  5. linux安装git方法

    用git --version命令检查是否已经安装 在CentOS5的版本,由于yum源中没有git,所以需要预先安装一系列的依赖包.在CentOS6的yum源中已经有git的版本了,可以直接使用yum ...

  6. 全文搜索引擎——Solr

    1.部署solr a.下载并解压Solr b.导入项目(独立项目): 将解压后的 server\solr-webapp 下的 webapp文件夹 拷贝到tomcat的webapps下,并重命名为 so ...

  7. python 单行写法

    if not any([_ in fingers for _ in finger_ids])

  8. 英语口语练习系列-C36-城市-谈论活动-登高

    词汇-城市 city your favorite city a place you would like to visit metropolis capital landscape enchantin ...

  9. Java 多线程 sleep()方法与yield()方法的区别

    sleep()方法与yield()方法的区别如下: 1 是否考虑线程的优先级不同 sleep()方法给其他线程运行机会时不考虑线程的优先级,也就是说,它会给低优先级的线程运行的机会.而yield()方 ...

  10. js面向对象关键点

    函数加new 工作流程: (1) 创建一个新对象: => var this = new Object(); (2) 将构造函数的作用域赋给新对象(因此 this 就指向了这个新对象) : (3) ...