`

初试Python

阅读更多

    之前一直在用Java,也学过一点儿Ruby,而且用Rails也做过小的项目,算是见识到了RoR强大的地方。不过一直都没试过Python,虽然很久以前也看过Python的书籍,对python的基本语法和编程思想有了一点表层的了解,但是一直都没付诸实践,动手编一编。很多人都说Python很简单,有些人学几小时就能编出不错的Python代码,这不免让我对python更加产生兴趣,正好有空,试着照着教程,亲手体验了一下Python。

     给我最大的感觉是Python是如此之简单,当然不是说这门语言简单,而是编出的代码是那么的简单,非常精炼,没有Java那么多繁文缛节,很符合我简约的思想。由于之前学过Ruby,所以在编的过程中不免总是在头脑中将Python和Ruby进行对比。虽然网上很多人也都在对这两门语言进行不断的讨论,这里仅结合自己的学习简单谈一点的感受。

 

  • 感觉Ruby更像Java,而Python更像C++。在编Ruby时,一切都是对象,所有的方法调用都是通过对象实例来实现,而python中我看到的更多是C/C++、PHP的影子,很多库函数。
  • 之前看到网上过有人说过Ruby重在代码的美,而Python重在代码的简洁,这点我是实实在在地感受到了。Ruby的代码每个方法的起止都非常清楚,看起来很整齐,很漂亮;而Python中采用缩进来控制代码结构,不得不说这是个很独特的想法,可以省去很多Ruby中写end的时间,因而Python的代码每一行都很纯粹,没什么多余的东西。
  • Python语言提倡“约定优于配置”的原则,虽然最早听到这个原则是在学Ruby时,但还是感觉Python在这方面做的不错,例如其对属性的访问控制,通过变量名来决定访问权限,省去了Java中的getter和setter,可见Python在背后做了很多工作。当然这在Ruby中也得到了很好的解决,只不过解决的方式不同,各有千秋。
  • 至少在目前看来Python的库还是远好于Ruby,而且有更多的商业实践,包括网络巨头Google的推动,国内douban简直算是Python应用的典范,另一方面原因是Python出现较早,自然发展的相对成熟些;对于Ruby,也有比较不错的商业应用,例如twitter和国内的JavaEye,不过跟Python相比Ruby还是年轻,很多东西还有待发展,很多库还不健全。之前用RoR开发的时候也用过一些第三方类库,很多东西还不是那么完善,而且有些对中文的支持还有待改善。
  • 框架。在Ruby企业级开发中Rails绝对是个杀手级框架,虽然除了Rails还有很多种选择,不过别的框架还是难以盖过Rails的光辉,很大程度上Rails已经不仅仅是一个简单的框架,而是一种思想,而且影响到了很多其他语言;而Python中也有很多优秀的框架,不过感觉相对灵活,虽然Django用的很多,但还是有很多其他框架可供选择,感觉更加灵活,当然控制不好也会引发很多负面问题。
  • 虽然Ruby在Java等其他语言的基础上做了很多改善,但在使用过程中还是可以看到很多Java的影子(至少相比Python而言是这样);而Python则离Java相对更远一些,更像是PHP或是C++,所以对于经常用Java开发的人来说学习Python可能会对发散思维有更大的帮助,因为从某种程度上来说Python是与Java不同的风格,也可以说是从不同角度来思考问题,我觉得这对于一个人整体思考问题能力的提高是有很大帮助的,或许在以后的工作中不一定会经常使用到,但多学点儿东西总归不是什么坏事,而且还可能收获意想不到的东西,所以还是推荐大家有空的时候可以学学Python。
未完待续,随时补充...

    以上就是我在学习Python过程中的一点小小的感悟,可能有些地方说的不正确,欢迎大家批评讨论。
分享到:
评论

相关推荐

    初试Python 操作Mysql

    博文链接:https://23c.iteye.com/blog/191127

    研究生初试录取 程序代码

    研究生初试录取代码 java 操作 绝对经典

    python入门教程-python入门神图一张.pdf

    教程 python入 入门 门神 神图 图一 一张 张 这篇文章主要介绍了Python 10分钟入门教程,分享一张Python入门神图一张,具有一定的参考价值,感兴趣的小 伙伴们可以参考一下 初 初试牛刀 牛刀 假设你希望学习Python这...

    Python爬虫(特别好用)

    3、初试 打开百度并截图 import asyncio from pyppeteer import launch async def main(): browser = await launch(headless=False) # 关闭无头浏览器 page = await browser.newPage() await page.goto('...

    Python网络爬虫进阶教程.pdf

    9.1.5 Selenium 初试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 9.2 定位元素 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...

    Python Matplotlib库入门指南

    初试Matplotlib Matplotlib中的pyplot子库提供了和matlab类似的绘图API. 复制代码 代码如下: import matplotlib.pyplot as plt #导入pyplot子库 plt.figure(figsize=(8, 4)) #创建一个绘图对象,

    python入门教程 python入门神图一张

    初试牛刀 假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(CheatSheet)之间,因此只会包含一些...

    python实现的一只从百度开始不断搜索的小爬虫

    文中用到了BeautifulSoup这个库, 目的是处理html文档分析的, 因为我只是提取了title的关键字,所以可以用正则表达式代替, 还有一个库是jieba, 这个库是中文分词的作用, 再有一个库是 chardet, 用来判断字符的...

    Flask框架初试代码

    这是我第一次尝试python3+flask编程,也是第一个python程序

    python入门:这篇文章带你直接学会python

    初试牛刀 假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(CheatSheet)之间,因此只会包含一些...

    python 研究生成绩录取系统

    具有录入,查询,修改,删除,显示,查找、查看排名、保存...总分=初试成绩×70%+[(复试成绩÷3)×5]×30%。 根据系统提示输入录取人数,按照分数的高低确定是否录取。录取的话是否录取信息为“是”,否则为“否”。

    极简的Python入门指引

    初试牛刀 假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(CheatSheet)之间,因此只会包含一些...

    python3下实现搜狗AI API的代码示例

    a、搜狗也发布了自己的人工智能 api,包括身份证ocr、名片ocr、文本翻译等API,初试感觉准确率一般般。 b、基于python3。 c、也有自己的签名生成这块,有了鹅厂的底子,相对写起来比较简单。 d、不过Sougou明显在...

    聊天机器人-ChatterBot初试.pdf

    聊天机器⼈-ChatterBot初试 聊天机器⼈ 聊天机器⼈ ChatterBot ChatterBot是⼀个基于Python的开源聊天机器⼈框架。ChatterBot⽀持中⽂,且可以在对话中实时改进。 ⼀个未经训练的ChatterBot 实例开始时不知道如何...

    python通过SSH登陆linux并操作的实现

    用的昨天刚接触到的库,在windows下通过paramiko来登录linux系统并执行了几个命令,基本算是初试成功,后面会接着学习的。 代码: >>> import paramiko >>> ssh = paramiko.SSHClient() >>> ssh.set_missing_host_...

Global site tag (gtag.js) - Google Analytics