儿童编程python入门


Posted in Python onMay 08, 2018

经常会有小朋友问我,“我想做个黑客,我该学什么编程语言?”,或者有的小朋友会说:“我要学c,我要做病毒”。其实对于这些小朋友而言他们基本都没有接触过编程语言,只是通过影视或者其他地方看到的一些东西认为黑客很酷,超级厉害,因此也萌生了这样的想法。我也认为黑客很厉害,他们不只是会一门编程语言那么简单,要想成为他们那样厉害的人对小朋友来说还有很长的路要走。

而很多小朋友真正想做的就是能通过简单的代码做出很酷炫的东西,能在同学间炫耀一把,那就很满足了。如果你真的想学编程,那么我还是建议python,看到下面这些神奇的代码,也许你会改变自己最初的想法。不是我们觉得C不好(很多人是从c入门而从此心生畏惧,受挫而放弃的),而是python更适合入门,当你通过一段时间的学习,你真的爱上了编程,你可以再去学习c,这样你之前所积累的知识会让你对它有更深刻的理解与认知,毕竟兴趣真的很重要。

如果你能在同学朋友面前秀一下这行代码,我估计他们会用特别崇拜的眼神看你的。

print'\n'.join([''.join([('ChinaLove'[(x-y)%8]if((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<=0 else' ')for x in range(-30,30)])for y in range(15,-15,-1)])

在python 里执行它,会输出一个字符拼出的心形,是不是很酷啊。

儿童编程python入门

再来一个,虽然你可能不知道这个东西,不过看看结果也是让你很激动的。

有一个著名的图像叫mandelbrot。Mandelbrot图像中的每个位置都对应于公式N=x+y*i中的一个复数,高中学过复数的都还应该有印象。每个位置用参数N来表示,它是x*x+y*y的平方根。如果这个值大于或等于2,则这个数字对应的位置值是 0。如果参数N的值小于2,就把N的值改为N*N-N(N=(x*x-y*y-x)+(2*x*y-y)*i)),并再次测试这个新N值。wiki百科给出的图像是这样的:

儿童编程python入门

让我们用一行代码画一个Mandelbrot:

print'\n'.join([''.join(['*'if abs((lambda a:lambda z,c,n:a(a,z,c,n))(lambda s,z,c,n:z if n==0else s(s,z*z+c,c,n-1))(0,0.02*x+0.05j*y,40))<2 else' 'for x in range(-80,20)])for y in range(-20,20)])

11111

对于随手小工具而言,更是Python的拿手好戏。

一行代码打印九九乘法表:

print '\n'.join([' '.join(['%s*%s=%-2s' % (y,x,x*y) for y in range(1,x+1)]) for x in range(1,10)])

儿童编程python入门

Python 相关文章推荐
python计算最小优先级队列代码分享
Dec 18 Python
举例讲解Python中metaclass元类的创建与使用
Jun 30 Python
读取本地json文件,解析json(实例讲解)
Dec 06 Python
python奇偶行分开存储实现代码
Mar 19 Python
python3.6环境安装+pip环境配置教程图文详解
Jun 20 Python
Python占用的内存优化教程
Jul 28 Python
python实现对服务器脚本敏感信息的加密解密功能
Aug 13 Python
Python线程指南分享
Nov 19 Python
Python操作MySQL数据库实例详解【安装、连接、增删改查等】
Jan 17 Python
Python日期格式和字符串格式相互转换的方法
Feb 18 Python
Jupyter打开图形界面并画出正弦函数图像实例
Apr 24 Python
jupyter notebook更换皮肤主题的实现
Jan 07 Python
解决python大批量读写.doc文件的问题
May 08 #Python
python在每个字符后添加空格的实例
May 07 #Python
Pycharm在创建py文件时,自动添加文件头注释的实例
May 07 #Python
python 读取DICOM头文件的实例
May 07 #Python
解决Python requests库编码 socks5代理的问题
May 07 #Python
基于python requests库中的代理实例讲解
May 07 #Python
Python操作Oracle数据库的简单方法和封装类实例
May 07 #Python
You might like
Joomla下利用configuration.php存储简单数据
2010/05/19 PHP
php 删除cookie方法详解
2014/12/01 PHP
php面向对象中static静态属性和静态方法的调用
2015/02/08 PHP
利用PHP绘图函数实现简单验证码功能的方法
2016/10/18 PHP
laravel 5.4中实现无限级分类的方法示例
2017/07/27 PHP
Javascript笔记一 js以及json基础使用说明
2010/05/22 Javascript
基于jQuery的实现简单的分页控件
2010/10/10 Javascript
jquery下为Event handler传递动态参数的代码
2011/01/06 Javascript
js中直接声明一个对象的方法
2014/08/10 Javascript
使用jQuery实现更改默认alert框体
2015/04/13 Javascript
JS中获取函数调用链所有参数的方法
2015/05/07 Javascript
简单纯js实现点击切换TAB标签实例
2015/08/23 Javascript
早该知道的7个JavaScript技巧
2016/06/21 Javascript
js 作用域和变量详解
2017/02/16 Javascript
jquery append与appendTo方法比较
2017/05/24 jQuery
vue-router路由参数刷新消失的问题解决方法
2017/06/17 Javascript
vuejs 单文件组件.vue 文件的使用
2017/07/28 Javascript
Angular4 反向代理Details实践
2018/05/30 Javascript
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
opencv 识别微信登录验证滑动块位置
2018/08/07 Javascript
VueJS 组件参数名命名与组件属性转化问题
2018/12/03 Javascript
js实现简单的随机点名器
2020/09/17 Javascript
Python基于checksum计算文件是否相同的方法
2015/07/09 Python
Python自定义线程类简单示例
2018/03/23 Python
python3实现猜数字游戏
2020/12/07 Python
pytorch GAN伪造手写体mnist数据集方式
2020/01/10 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
OpenCV 表盘指针自动读数的示例代码
2020/04/10 Python
python 读取串口数据的示例
2020/11/09 Python
英国名牌服装购物网站:OD’s Designer
2019/09/02 全球购物
《蒲公英》教学反思
2014/02/28 职场文书
个人先进事迹材料
2014/12/29 职场文书
2015年生活老师工作总结
2015/05/27 职场文书
Java使用Unsafe类的示例详解
2021/09/25 Java/Android
springboot+zookeeper实现分布式锁
2022/03/21 Java/Android
Python内置类型集合set和frozenset的使用详解
2022/04/26 Python