Python之父Guido在最近一次采访的最后说了啥?

在前些天的一次采访中,被问到Python未来发展方向的时候原文在infoworld,咱们可爱的python老爹Guido是这样说的:

One thing I want to point out are the SciPy and NumPy movements. Those people are introducing Python as a replacement for MatLab. It's open source, it's better, they can change it. They are taking it to places where I had never expected Python would travel. They have things like the Jupyter Notebooks that show interactive Python in the browser. There is a lot of incredibly cool work that is happening in that area.

简单翻译成中文就是说:在这里我要重点提一下SciPy 和 NumPy,做这些库的朋友们正在用Python替换MatLab,把Python带向了一个我从未想过的领域。他们发明了Jupyter Notebooks 可以在浏览器上进行Python的交互式编程。

注意到没? Jupyter Notebooks !

jupyter简介

jupyter是啥啊?

这个要从ipython说起,ipython是个交互式的python的解释器,自带颜色,补全还有行号,科学界的很多大牛都用来进行数据分析和图形显示。

ipython还可以运行在浏览器上,就是下面这个样子:

名字也就高大上一点,叫ipythoon notebook,那个jupyter图标一开始就有的,现在升级改造了,不止于运行python,还有R,spark之类的高大上玩意儿。所以就直接用 jupyter来指代这一堆产品了。

官方有个try页面,可以玩一玩。

https://try.jupyter.org/

jupyter安装

官方推荐的安装是这个:

Download Anaconda. We recommend downloading Anaconda’s latest Python 3 version (currently Python 3.5).

咱们民间可以直接安装

1.如果已经有python环境:

直接pip install jupyter

2.如果没有:

就先安装个python环境,然后再装

运行

jupyter notebook

然后就自动打开浏览器中localhost的8888端口,就可以在线写代码啦!不止于python,还有R等...

用户界面和主要功能

  • 写代码
  • 写文档(cell类型就分成markdown和code,随便改,另存为md格式就是文档了)
  • 科学运算和画图(numpy, scipy,pandas之类的以前都需要一个个安装啊,现在全齐了)

示例代码

简单计算器

4+6
10

写个字典

a = {'a':'alex', 'b':'sublime', 5:9999, 6:6666}
for k, v in a.items(): # items()是dict的方法,可以通过help(dict.items)查看
print k,v
a alex
b sublime
5 9999
6 6666

这货是个装饰器

def show_output(func):
def wrapped(*args, **kwargs):
output = func(*args, **kwargs)
print("the result is : ", output)
return wrapped
def is_even(num):
return num % 2 ==0

使用装饰器运行函数,并输出结果

f = show_output(is_even)
f(3)
the result is :  False

Jupyter对Python初学者的作用

对于初学者,难免编程过程中会出现各种错误,jupyter就是个代码摄像机,写代码时候出错了,看到一堆错误提示,没关系,从新插入一个cell,再次写起来!直到正确为止!

下面举个例子!

第一个错误

# 假装我不会写helloworld
print hello world
  File "<ipython-input-1-e9edef3fb57e>", line 2
print hello world
^
SyntaxError: invalid syntax

第二个错误

# 难道加个引号?
print 'hello world"
  File "<ipython-input-2-efbc3c88a80d>", line 2
print 'hello world"
^
SyntaxError: EOL while scanning string literal

啥情况?引号也不行?!

好吧,原来要写一对啊!

终于

# 这次对了吧?你好!世界!
print 'hello world'
hello world

ok,写到这里,错误代码有了,错误信息有了,最终也有了正确代码,再次回顾缩写代码的时候,可以清晰的看到自己犯过的错误,加深印象,有利于更快的掌握Python的语法和常见库函数的作用。

当然,在学会了Python基础之后,你可以选择继续用Jupyter中的各种数学库继续深造,使用numpy, scipy等进行数据分析与可视化。这方面已经有很多参考可以学习。

如果想做自动化开发和web开发,那么推荐你用另一个神器:pycharm,这里就不过多介绍了。

人身苦短,我用Python,学习Python的路上,你并不孤独!

完事开头难,学习Python最重要的是:实践,实线,再实践!如果你已经打开你的Jupyter notebook开始练习了,恭喜你!坚持下去,大法可成!

参考资源

Python之父Guido在最近一次采访的最后说了啥的更多相关文章

  1. Python之父重回决策层

    在Guido van Rossum(吉多·范罗苏姆)卸任BDFL(“终身仁慈独裁者”)一职半年多之后,Python社区迎来了新的治理新方案:指导委员会模式,而经过投票Guido van Rossum也 ...

  2. Python之父重回决策层,社区未来如何发展?

    春节假期结束了,大家陆续地重回到原来的生活轨道上.假期是一个很好的休息与调节的机会,同时,春节还有辞旧迎新的本意,它是新的轮回的开端. 在 Python 社区里,刚发生了一件大事,同样有开启新纪元的意 ...

  3. 自动编写Python程序的神器,Python 之父都发声力挺!

    ​ 就在不久前,kite——那个能够自己编写python代码的AI,Python 之父 Guido van Rossum 使用之后,也发出了「really love」感叹,向大家墙裂推荐了这一高效工具 ...

  4. Python 之父 63 岁才退休,我 23 就中年危机。。

    Java技术栈 www.javastack.cn 优秀的Java技术公众号 Python 之父 Guido van Rossum 在推特公布了自己从 Dropbox 公司离职的消息,并表示已经退休. ...

  5. Python 之父为什么嫌弃 lambda 匿名函数?

    Python 支持 lambda 匿名函数,其扩展的 BNF 表示法是lambda_expr ::= "lambda" [parameter_list] ":" ...

  6. Python 之父爆料:明年至少令 Python 提速 1 倍!

    大概在半年前,我偶然看到一篇文章,有人提出了给 Python 提速 5 倍的计划,并在寻找经费赞助.当时并没有在意,此后也没有看到这方面的消息. 但是,就在 5 月 13 日"2021 年 ...

  7. Python 之父谈放弃 Python:我对核心成员们失望至极!

    Python 之父讲述退位原因,以及 Python 的未来将何去何从. ​ 在 Python 社区,Python 的发明者 Guido Van Rossum 被称为 “仁慈的终生独裁者”(BDFL,B ...

  8. Python之父新发文,将替换现有解析器

    花下猫语: Guido van Rossum 是 Python 的创造者,虽然他现在放弃了"终身仁慈独裁者"的职位,但却成为了指导委员会的五位成员之一,其一举一动依然备受瞩目.近日 ...

  9. Python 之父撰文回忆:为什么要创造 pgen 解析器?

    花下猫语: 近日,Python 之父在 Medium 上开通了博客,并发布了一篇关于 PEG 解析器的文章(参见我翻的 全文译文).据我所知,他有自己的博客,为什么还会跑去 Medium 上写文呢?好 ...

随机推荐

  1. rotate.js实现图片旋转 (chrome,IE,firefox都可以实现)

    找了好多资料,要么是IE可以用,但是谷歌不行,,还有就是两个都可以用的,图片大小显示不全.终于找到一个好一点的js,先贴一下代码. 1.rotate.js jQuery.fn.rotate = fun ...

  2. 纯CSS3技术 加载中

    你能相信吗?这些都是由一个DIV元素实现的动画,纯CSS3技术 html  <div class="loader">加载中...</div> css: 图( ...

  3. SQL Server 查看正在运行的事务信息的 2 种方法。

    方法 1.sys.dm_tran_session_transactions; 方法 2.dbcc opentran ------------------------------------------ ...

  4. chart

    var pieChart = { width: 600, height: 400, series: [], unit: "kg", chartCanvas: null, selec ...

  5. 简单方便又实用的在线作图工具:ProcessOn

    说到Visio大家都不陌生,虽然没有Word那么火,但很多业内朋友都在用,一用就是好多年,Visio是相对比较传统和专业的工具,新手在没人指导的情况下一般很难上手,下载和安装以及“授权”都是个问题,很 ...

  6. perl binlog dml操作报告

    <pre name="code" class="html">if ( $#ARGV < 2 ){ print "please inp ...

  7. win7远程工具mstsc.exe

    相信很多人都用过类似QQ远程这样的远程工具,其实自xp开始windows就自带了远程工具mstsc.exe. 我只是介绍了如何使用远程工具登入别人的电脑. 首先,在开始->运行->msts ...

  8. today reading notes

    paminit manager from upstart to systemd/systemctl;Vivid Vervet  + openStack kilo;为容器开发者(OpenStack工作环 ...

  9. hdu 5620 KK's Steel(推理)

    Problem Description Our lovely KK has a difficult mathematical problem:he has a N(1≤N≤1018) meters s ...

  10. Material Design之FloatingActionButton的使用

    FloatingActionButton是继承至ImageView,所以FloatingActionButton拥有ImageView的全部属性. CoordinatorLayout能够用来配合Flo ...