儿童编程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实现查找系统盘中需要找的字符
Jul 14 Python
Django的数据模型访问多对多键值的方法
Jul 21 Python
Python使用urllib2模块抓取HTML页面资源的实例分享
May 03 Python
Python中字符串的修改及传参详解
Nov 30 Python
Python中防止sql注入的方法详解
Feb 25 Python
PyQt5主窗口动态加载Widget实例代码
Feb 07 Python
pytorch 加载(.pth)格式的模型实例
Aug 20 Python
Python如何读取、写入JSON数据
Jul 28 Python
python 操作excel表格的方法
Dec 05 Python
浅谈Python中的函数(def)及参数传递操作
May 25 Python
Python实现GIF动图以及视频卡通化详解
Dec 06 Python
5个pandas调用函数的方法让数据处理更加灵活自如
Apr 24 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
谈谈你对Zend SAPIs(Zend SAPI Internals)的理解
2015/11/10 PHP
浅谈PHP表单提交(POST&amp;GET&amp;URL编/解码)
2017/04/03 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
2019/10/17 PHP
一段利用WSH修改和查看IP配置的代码
2008/05/11 Javascript
toString()一个会自动调用的方法
2010/02/08 Javascript
ExtJs的Date格式字符代码
2010/12/30 Javascript
自己动手实现jQuery Callbacks完整功能代码详解
2013/11/25 Javascript
ie9 提示'console' 未定义问题的解决方法
2014/03/20 Javascript
jQuery之Deferred对象详解
2014/09/04 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
JavaScript动态修改弹出窗口大小的方法
2015/04/06 Javascript
JS函数定义方式的区别介绍
2016/03/22 Javascript
angular-ngSanitize模块-$sanitize服务详解
2017/06/13 Javascript
vue中七牛插件使用的实例代码
2017/07/28 Javascript
vue.js的computed,filter,get,set的用法及区别详解
2018/03/08 Javascript
js实现全选反选不选功能代码详解
2019/04/24 Javascript
基于原生js实现九宫格算法代码实例
2020/07/03 Javascript
Vue Object.defineProperty及ProxyVue实现双向数据绑定
2020/09/02 Javascript
VUE项目实现主题切换的多种方法
2020/11/26 Vue.js
[08:47]DOTA2每周TOP10 精彩击杀集锦vol.6
2014/06/25 DOTA
使用Python装饰器在Django框架下去除冗余代码的教程
2015/04/16 Python
python使用socket向客户端发送数据的方法
2015/04/29 Python
深入理解NumPy简明教程---数组2
2016/12/17 Python
python中找出numpy array数组的最值及其索引方法
2018/04/17 Python
pyhanlp安装介绍和简单应用
2019/02/22 Python
Python OpenCV图像指定区域裁剪的实现
2019/10/30 Python
解决Python发送Http请求时,中文乱码的问题
2020/04/30 Python
将不规则的Python多维数组拉平到一维的方法实现
2021/01/11 Python
纯HTML5+CSS3制作图片旋转
2016/01/12 HTML / CSS
客户代表自我评价范例
2013/09/24 职场文书
企业宣传工作方案
2014/06/02 职场文书
积极向上的团队口号
2014/06/06 职场文书
群众路线对照检查材料
2014/09/22 职场文书
服务员岗位职责
2015/02/03 职场文书
浪漫婚礼主持词开场白
2015/11/24 职场文书
python基于opencv批量生成验证码的示例
2021/04/28 Python