挨踢部落故事汇(30):我与Python的相爱相杀

原创
移动开发
Taniey与Python 结缘也是个意外,公司重组,他和队友顶着几星期的压力,徒手搭建服务器,这才有了与Python的相爱相杀。有BUG要上,没有BUG制造BUG也要上。希望用他这7年的填坑经验给同样在Python世界里挣扎的人以兹鼓励。

【51CTO.com原创稿件】Taniey与Python 结缘也是个意外,公司重组,他和队友顶着几个星期的压力,徒手搭建服务器,这才有了与Python的故事。有BUG要上,没有BUG制造BUG也要上。希望用他这7年的填坑经验给同样在Python世界里挣扎的人以兹鼓励。

[[207273]]

Taniey·Python开发工程师

Taniey是个典型的吊丝程序猿,爱好发呆,Bug专属制造者。曾挖了无数坑,埋了自己坑了队友。

[[207274]]

挖完坑就跑?那不能够。。。做不倒全身而退,就踏踏实实填坑吧。

初识Python,从官网开始

话说Taniey与Python 结缘也是个意外,由于公司重组,领导把他和队友们都给拉出去,说:给你们几个星期,把服务给建起来,否则…,(哈哈,没那么严重了,就是把他们单独分出去成立子公司,所有东西都要重新开发,不过压力还是蛮大的),没办法,他这个C++死粉如果还采用C++去做开发,那等服务开发出来早就死翹翹啦,转去寻求其它开发效率更高的语言,这才有了与Python的接触。

半路出家的Taniey,在这之前可是一点 Python的影子都没接触过。别人都说买书学,可是他呢,小抠儿就没买(其实就是时间太紧,看书那真是来不及的)。网上学吧,当时他找个一个网址真是不错,写的既简洁,又很实用,虽然网址只是对有其它语言基础的更合适。不过很遺憾,Taniey找不到这个网址了,能找到的都是些系统讲解的网址,如果要进行系统学习这些网址很好,大部分开发者都在短时间进行快速攻坚,还是找点儿干货。

对于买书,Taniey觉得书是个好东西,既能随时看,又能够系统地学习,不过想要得到一手的资料, Python官网就是不二之选,为什么这么说,国外网站,对产品的说明文档,没得说,很有条理,也很详细,并且全部内容也不是很多(Python本身语法就不多嘛,很多开发者说Python简洁,这也是其中一个原因),一个星期就可以看完,还是在业余时间!所以不要犹豫,去看吧,顺便还能学点英语,多好~~

再识Python,已是囊中物

学习Python,***是有项目可以做,在项目中学习这是最为快速的学习方法,工作学习两不误(话说哪有这个好的环境让你学,那公司可真是仁慈啊),现在想想当时顶着压力学的Python,还真是万幸。

都说Python代码简洁,初学还是建议先不要刻意追求他的代码有多简洁,先繁后简再优化(虽然说得有点不负责任,不过有多少代码是一次成型的?),先用起来再说,尤其是对其它编程语言的转型者而言。当你对Python如鱼得水的时候,你会看到Python是如此的强大。

有一点需要注意,Python现在有两个主版本在使用,并且是不兼容的,初学者的大坑啊。

1、比如 print 的使用:

在Python2 里你可以直接使用:print "没有括号的 print 打印"

在Python3里你需要强制使用:print("有括号的  print 打印")

Python2 里的 print 与 Python3里的 print,如果你去看两个版本的print 解释文档,就会发现,python2解释文档里有一个,注意说明(Note),告诉你这个不加括号的 print 是使用了 print 声明(statement),加了括号的print 才是真正使用的 print 函数(function)。

有兴趣可以自己找到看:

Python2Python3

2、Python2 到 2020年就会停止更新,所以如果不是有历史问题就使用Python3吧。Taniey不才就入了这个坑,还好 Python有个 py2to3。

另外,用Python2的时候一定要注意Python字符串编码,很容易就掉进去出不来。

3、Python的tab与空格。因为 Python是以空白字符来检测作用域的,所以,空白字符的使用就比较重要了,很多人在里没少栽跟头,在这里***养成一个好习惯,使用空格不要使用tab,好在一般IDE,都会对tab 和空格做自动转换,方便许多。

如下几行代码:你能知道哪个是空格,哪个是TAB?

3

空白字符显示出来,就更明白了:

做Python给Taniey***感触就是基本上不需要写太多东西,需要用到什么只要去PyPI上找一定能找得到。

4、IDE 选择。作开发,IDE是必不可少的,网上可以搜索到很多关于介绍Python IDE的,一说都是一堆,当时Taniey没经验,只能挨个测试。他测试的血泪史就先不说了,就说说测试结果:

在windows上做的开发 ,并在 linux 上运行,Taniey测试最多的是:

        Notepad++ ,  Visual studio PythonIDE 插件,Eclipse+PyDev, PyCharm

①Notepad++:没错,就是一个记事本性质的工具,而且最开始他居然选的就是这个,当初用它是因为简单,后来不用它没办法也是因为太简单了。虽然这个工具可以加很多插件来达到类似IDE的功能,不过跟真正的IDE还差得远呢。

②Visual studio PythonIDE 插件,这个插件,与Visual studio 天然集成,很符合 VS风格,起初他用的时候还是相当不错,不过用多了就会发现到处都是BUG,招人厌了(当时Taniey用的时候才刚2.0,现在都什么版本)。

③PyCharm,听官网吹得挺好,Taniey感觉就是拿Eclipse 改出来的,没啥特别(不要喷,萝卜白菜,各有所爱)。

(感谢@北京-unicorn-数据友情提供破解版)

PyCharm破解版,License server 填写>>

PyCharm注册码的方法>>

第三种方法更麻烦:IntelliJ IDEA License Server本地搭建教程[[207276]]

Taniey最喜欢的还是 Eclipse+PyDev,基本上开发者想用的功能都有了,如果Eclipse 用得好,这个应该也不是问题。Taniey强烈推荐。

5、Python 的 Python Enhancement Proposals (PEPs),其中包括:pep8 的Python代码风格规范,如果要使用Python作项目建议 多看看这个 pep8规范。对你的编码风格很有帮助。参考网址>>

借用 Tim Peters 的 Python之禅。参考网址>>

翻译网上自己找,很多。

【写在***】

从C++到Python,Taniey越来越爱上这个强大的编程语言——Python,光是用Python来开发的光阴就将近四年了,大多是视频服务类产品,用Python做接口。坑都是摸爬滚打挖了填填了再挖的,用Taniey的话来说就是有BUG要上,没有BUG制造BUG也要上。希望用他这些年的填坑经验给同样在Python世界里挣扎的人以兹鼓励。

如果你也愿意分享你的故事,请加51CTO开发者QQ交流群 627843829联系群主小官,期待你精彩的故事!

51CTO开发者交流群④群 627843829

【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】

责任编辑:何星 来源: 51CTO
相关推荐

2016-12-30 16:43:53

开发者故事

2017-11-28 14:15:38

开发者故事

2017-03-21 11:19:57

开发者故事

2017-01-18 16:37:43

开发者故事

2017-03-01 15:57:48

开发者故事

2017-01-11 17:25:23

开发者故事

2017-06-09 16:27:40

开发者故事

2017-01-10 14:59:03

开发者故事

2017-09-15 11:39:47

2017-01-19 13:40:56

开发者故事

2017-01-18 11:07:20

开发者故事

2017-03-10 11:32:49

开发者故事

2017-01-16 17:24:08

开发者故事

2017-04-25 15:39:30

开发者故事

2017-07-06 14:59:27

2017-08-04 13:15:59

开发者故事

2017-04-21 15:50:52

开发者故事

2017-03-24 16:43:09

开发者故事

2018-07-04 17:42:58

开发者故事

2017-01-13 16:36:29

开发者故事
点赞
收藏

51CTO技术栈公众号