记得刚学Python的时候,几乎所有人都说Python 简单易学,而对于编程零基础,只掌握Word和Excel的人来说,感觉真的好难。
学习之前网上的教材看了,Python的书也看了,包括《核心编程》,公开课也看了,包括莱斯大学和MIT的课。很多知识点,看的时候好像明白了,然后马上就忘,看了三四遍也记不住。
就算是多练习,多做题,很多题也是照着例题依样画葫芦就能做出来,改动一下就不明白了,感觉还是没有深入理解。
在网上看,到处都是自学几个月就很懂了然后找到满意工作的帖子,有没有人像我一样觉得很难呢?
有网友点评说:
Python语言本身是比较容易的,楼主说的难应该指programming本身。
不觉得非计算机专业出身就学不好编程,我就是学通信的,学Python全凭兴趣。平时用Python干各种脏活累活,数值计算、数据处理、复杂文本处理、数据库导入导出excel、网上抢票、Web数据抓取、消息推送、DHT网络爬虫、Kodi插件、Web自动化测试、网盘下载、云点播。甚至有次日记软件密码忘了,都是通过py+autoit暴力破解出来的。
我的win、debian、mac上面一般都会开一两个ipython,临时处理各类杂务。简单来说,Python现在就是我日常生活的一部分。我不是专业程序员,也没用Python做过什么大项目,只是每天享受Python带来的便捷与快乐。
楼主所说的不能深入理解,其实是不愿意花时间钻研。用了十几年Python,现在也要一直翻看官方文档和一些第三方module的文档,不断把遇到的问题弄懂弄透,学习不就是这个过程么?
我觉得楼主对Python无爱,对编程无爱,那就没必要强迫自己填鸭式“学习”了。
另外一个建议,练习时尽量不要copy后在现有demo基础上改,从头开始写起,遇到问题一个个查清,这样才能学到东西。
接收到这个小伙伴的答案,我内心开始反思,其实他说得都对的3个点是:
1其实本身我对编程是不热爱的,只是因为需要;
2其实本身我是对Python更上层可以用来做什么是不清楚的,思维还是在机械的完成一个Python习题;
3其实我本身对编程的难度是小悄了的,Python简单是相对于C、Java等语言。
说到这里,不知道看到本文的小伙伴有几个有类似的心理映射,如果你是上面的状态,那你学习Python一定是难的。
下面我们来看看另外一位学习者的建议:
python是一门简单易学,容易理解,分分钟就可以掌握的语言,我也是学了大概一两个星期吧,就开始做项目了,嘻嘻!!!
这里有一个很严重的问题,,我在学python之前,做过3点的C#,一年的php和一年的java!
所以呢,我想说的是,如果你对编程不那么敏感,就需要时间来弥补了,那些什么书啊,公开课啊,我觉得都是辅助的,你要是不经历几个项目,怎么知道python为什么容易学,怎么知道python好理解,怎么知道python有哪些超级好用的框架,比如django,tonado之类的。
所以呀,编程没有捷径,你甭想通过看。。。就学会,写起来才是最重要的!
最终通过对学习Python这件事,我总结了几点关于学习Python的建议,希望跟大家一起分享:
1编程语言是一回事,但更重要的是编程思想,不要把应试教育的思想带到这里面来,并不是所有的知识都能靠“五年高考三年模拟”来掌握;
2自己找个想用程序解决的任务,然后自己边学边完成。
3没有编程基础的人新学一门语言一定一定要有耐心,基础知识没有半年以上的学习和练习是很难彻底掌握的,千万不要图快,学的太快或许会有一时的成就感,但基础知识不扎实终将会成为你前进道路上的瓶颈,不仅学新的知识一知半解,工作时也会磕磕绊绊。
4没有计算机基础,不管学什么语言都会有点吃力的,python语法比较简单的。
5现在要做的就是把错误犯下100遍,那你就拿下这个Get了!
就像只要会JavaScript就可以写出完整的Web应用,只要会Python,就可以实现一个完整的大数据处理平台。\x0d\\x0d\云基础设施\x0d\\x0d\这年头,不支持云平台,不支持海量数据,不支持动态伸缩,根本不敢说自己是做大数据的,顶多也就敢跟人说是做商业智能(BI)。\x0d\\x0d\云平台分为私有云和公有云。私有云平台如日中天的 OpenStack\x0d\ \x0d\,就是Python写的。曾经的追赶者CloudStack,在刚推出时大肆强调自己是Java写的,比Python有优势。结果,搬石砸脚,2015年\x0d\初,CloudStack的发起人Citrix宣布加入OpenStack基金会,CloudStack眼看着就要寿终正寝。\x0d\\x0d\如果嫌麻烦不想自己搭建私有云,用公有云,不论是AWS,GCE,Azure,还是阿里云,青云,在都提供了Python SDK,其中GCE只提供Python和JavaScript的SDK,而青云只提供Python SDK。可见各家云平台对Python的重视。\x0d\\x0d\提到基础设施搭建,不得不提Hadoop,在今天,Hadoop因为其MapReduce数据处理速度不够快,已经不再作为大数据处理的首选,但\x0d\是HDFS和Yarn——Hadoop的两个组件——倒是越来越受欢迎。Hadoop的开发语言是Java,没有官方提供Python支持,不过有很多第\x0d\三方库封装了Hadoop的API接口(pydoop,hadoopy等等)。\x0d\\x0d\Hadoop MapReduce的替代者,是号称快上100倍的 Spark ,其开发语言是Scala,但是提供了Scala,Java,Python的开发接口,想要讨好那么多用Python开发的数据科学家,不支持Python,真是说不过去。HDFS的替代品,比如GlusterFS, Ceph 等,都是直接提供Python支持。Yarn的替代者, Mesos 是C++实现,除C++外,提供了Java和Python的支持包。\x0d\\x0d\DevOps\x0d\\x0d\DevOps有个中文名字,叫做 开发自运维 。互联网时代,只有能够快速试验新想法,并在第一时间,安全、可靠的交付业务价值,才能保持竞争力。DevOps推崇的自动化构建/测试/部署,以及系统度量等技术实践,是互联网时代必不可少的。\x0d\\x0d\自动化构建是因应用而易的,如果是Python应用,因为有setuptools, pip, virtualenv, tox, \x0d\flake8等工具的存在,自动化构建非常简单。而且,因为几乎所有Linux系统都内置Python解释器,所以用Python做自动化,不需要系统预\x0d\安装什么软件。\x0d\\x0d\自动化测试方面,基于Python的 Robot Framework 企业级应用最喜欢的自动化测试框架,而且和语言无关。Cucumber也有很多支持者,Python对应的Lettuce可以做到完全一样的事情。 Locust 在自动化性能测试方面也开始受到越来越多的关注。\x0d\\x0d\自动化配置管理工具,老牌的如Chef和Puppet,是Ruby开发,目前仍保持着强劲的势头。不过,新生代 Ansible 和 SaltStack ——均为Python开发——因为较前两者设计更为轻量化,受到越来越多开发这的欢迎,已经开始给前辈们制造了不少的压力。\x0d\\x0d\在系统监控与度量方面,传统的Nagios逐渐没落,新贵如 Sensu 大受好评,云服务形式的New Relic已经成为创业公司的标配,这些都不是直接通过Python实现的,不过Python要接入这些工具,并不困难。\x0d\\x0d\除了上述这些工具,基于Python,提供完整DevOps功能的PaaS平台,如 Cloudify 和 Deis ,虽未成气候,但已经得到大量关注。\x0d\\x0d\网络爬虫\x0d\\x0d\大数据的数据从哪里来?除了部分企业有能力自己产生大量的数据,大部分时候,是需要靠爬虫来抓取互联网数据来做分析。\x0d\\x0d\网络爬虫是Python的传统强势领域,最流行的爬虫框架Scrapy,>
《R语言编程指南》(任坤|译者)电子书网盘下载免费在线阅读
链接:> 提取码:oz8y
书名:R语言编程指南
作者:任坤|译者
译者:王婷
出版社:人民邮电出版社
出版年份:2017-10
内容简介:
R是一个开源、跨平台的科学计算和统计分析软件包,它提供了丰富多样的统计功能和强大的数据分析功能。随着数据科学的快速发展,R已经成为数据分析领域非常流行的语言。本书通过15章内容,向读者全面讲解了R的基础知识和编程技巧。本书不仅介绍了R的安装、基本对象、工作空间管理、基本表达式、基本对象 *** 作、字符串的使用等基础内容,还对数据处理、R的内部机制、元编程、面向对象编程、数据库 *** 作、数据 *** 作进行了讲解,同时也涉及高性能计算、网页爬虫和效率提升等重要主题。
作者简介:
在量化交易中使用R以及C++和C#已有4年的时间,他一直致力于开发有用的但社区尚未提供的R包(每天工作8~10小时)。他为其他作者开发的扩展包做出过很多贡献,指出其中存在的问题并给出改进建议。他也是中国R语言大会的重要嘉宾,在R会议上做过多次演讲。在众多社交媒体中,任坤也受到了广泛关注。
你好,这主要是因为Python在处理大数据方面有着得天独厚的优势。
以后您如果再遇到类似的问题,可以按照下面的思路去解决:
1、发现问题:往往生活在世界中,时时刻刻都处在这各种各样的矛盾中,当某些矛盾放映到意识中时,个体才发现他是个问题,并要求设法去解决它。这就是发现问题的阶段。从问题的解决的阶段性看,这是第一阶段,是解决问题的前提。
2、分析问题:要解决所发现的问题,必须明确问题的性质,也就是弄清楚有哪些矛盾、哪些矛盾方面,他们之间有什么关系,以明确所要解决的问题要达到什么结果,所必须具备的条件、其间的关系和已具有哪些条件,从而找出重要的矛盾、关键矛盾之所在。
3、提出假设:在分析问题的基础上,提出解决问题的假设,即可采用的解决方案,其中包括采取什么原则和具体的途径和方法,但所有这些往往不是简单现成的,而且有多种多样的可能。但提出假设是问题解决的关键阶段,正确的假设引导问题顺利得到解决,不正确不恰当的假设则使问题的解决走弯路或导向歧途。
4、校验假设:假设只是提出n种可能解决方案,还不能保证问题必定能获得解决,所以问题解决的最后一步是对假设进行检验。不论哪种检验如果未能获得预期结果,必须重新另提出假设再进行检验,直至获得正确结果,问题才算解决。
1、语言的定义:
Python是一种跨平台的计算机程序设计语言。
是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
R是用于统计分析、绘图的语言和 *** 作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。
2、适用群体:
R语言在学术研究和调查工作中使用的比较多,逐渐延伸到企业商业界。使用人群不一样需要计算机背景,统计、金融、经济、核电、环境、医疗、物流管理乃至人文学科,都有R语言立足之地;Python相比R非标准的代码,Python作为出了名的语法简洁工具,对于一些稍有编程基础的人来说格外友好,可以减少在编程进程中的磕绊,没有任何基础的编程小白一样可以上手Python,适用于金融、医疗、管理等各行各业。
3、学习难度:
刚开始学习R语言的时候了解最基本知识和语言逻辑,入门不难,如果数理统计基础好的话学起来更容易,相反,如果没有数理背景,学习起来会增加难度;Python看重可读性和易用性,学习难度比较平缓,对于初级小白而言,十分友好,可就业方向也有很多。
4、就业方向:
R场景:数据探索、统计分析、数据可视化;岗位:数据分析师、数据科学家、投资分析师、税务人员、管理人员、科研人员等。
Python场景:数据分析、网络爬虫、系统编程、图形处理、文本处理、数据库编程、网络编程、Web编程、数据库连接、人工智能、机器学习等;岗位:数据架构师、数据分析师、数据工程师、数据科学家、程序开发员等。
下面我们来说一下Python具体的工作岗位以及其岗位要求:
Python后台开发工程师:主要是负责搭建和改进平台产品的后台,并与前端开发工程师相互配合完成整体产品的开发工作。要求工程师具备至少一门Python Web开发框架(Tornado、Django、Flask等),了解并熟悉MySQL/Redis/MongoDB。还要熟悉分布式、微服务、高性能Web服务的开发。
Python爬虫开发工程师:爬虫开发工程师并非我们预想的那样,只是负责为公司爬取相对应的数据内容。爬虫开发工程师主要负责对传统网页、SNS及微博等各种网站信息高效采集与正确解析,然后对用户数据进行整理分析,参与建模的构建,总结分析不同网站、网页的结构特点及规律,负责爬虫架构设计和研发,参与爬虫核心算法和策略优化研究。需要开发工程师熟悉了解robot规则、selenium、mitmproxy、pymouse等内容。当然作为爬虫开发工程师一定要有一定的职业情况,所有工作都需要在合理合法的需求下进行。
Python全栈开发工程师:是指可以使用Python相关工具,独立完成网站开发,称之为全栈开发。全栈开发工程师需要掌握非常多的技能,包括:项目管理、前后端开发、界面设计、产品设计、数据库开发、多端产品等等。
自动化运维工程师:是在基本的运维工作的基础上,实现运维工作的自动化,并且对自动化程序进行优化提升。需要从业者在掌握基本的运营工作的前提下,掌握Python中的IPy、Ansible、Saltstack等常用模块。
自动化测试工程师:首要要完成测试的基本工作,包括测试计划、测试用例、黑盒测试、性能测试等等。其次要是完成产品的自动化测试的部署以及维护工作,并且不断尝试新的方法,新的工具,以提高测试的效率。需要掌握Python以及selenium相关的技能。
数据分析师:指的是不同行业中,专门从事行业数据搜集、整理、分析,并依据数据做出行业研究、评估和预测的专业人员。需要从业者了解行业相关业务知识、相关管理工作、掌握足够的数据分析方法、了解数据分析工具使用、能够完成数据分析建模等,工作内容偏重于分析,同样也要掌握一定的开发能力,例如R语言和Python语言。
数据分析开发工程师:根据数据分析师的建模完成数据相关的开发工作,搭建仓库、完成数据存储、数据处理、计算处理以及报表开发等工作。需要从业者熟练应用数据库、数据建模开发、Python相关数据科学知识等技能。
人工智能开发工程师:根据企业人工智能AI相关的开发需求,完成相应产品或者功能开发。需要从业者掌握充分的数据理论基础、Python开发基础、机器学习理论与实践、深度学习理论与实践、自然语言处理等一系列相关的开发技能。
Python游戏开发工程师:主要负责游戏服务端的逻辑开发。需要从业者掌握Python各种性能优化方法、soket网络编程知识、运维相关基础知识、以及Python相关的游戏开发库与框架。
此外还可以将Python开发相关工作按照岗位晋升分为初级Python开发工程师、中级Python开发工程师、高级Python开发工程师、项目经理、架构师、CTO等。主要是根据从业者工作年限,在某个就业方向的工作经验以及解决问题的能力进行定位。
无论是哪个就业方向,扎实的学习好Python相关知识是重中之重,在互联网行业,无论是大厂还是创业创新的公司,招聘人才的最核心要求是技术能力,只有自己的能力和岗位匹配的时候,才能获得更多的工作机会。
数据挖掘的编程语言,一般要看用于什么领域来进行选择,介绍一下数据挖掘的编程语言的应用:
数据挖掘会用到SQL结构化查询语言,其它任何编程语言仅是借助SQL结构化查询语言完成数据库的 *** 作、查询和维护。结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。一般来说做数据分析挖掘每种编程语言基本都能做。比如在社会经济领域,普遍应用的是SPASS、SAS、MODELER等,一般的话,应用EXCEL也是可以的;在其他领域,编程能力强的可以用MATLAB,Python,R等语言上面这几种最好都学一下,做分析方面,R语言是强项。数据可视化是Matlab。但是挖数据要做爬虫,这个又会用到Java和Python,Python是个全能,在分析方面有Numpy,Scipy等数据分析库,又有很多爬虫库,还有matplotlib的库把数据可视化。
如果你想了解数据挖掘使用什么编程语言,推荐CDA数据分析师的课程,课程主要培养学员硬性的数据挖掘理论与Python数据挖掘算法技能的同时,还兼顾培养学员软性数据治理思维、商业策略优化思维、挖掘经营思维、算法思维、预测分析思维,全方位提升学员的数据洞察力。课程以项目调动学员数据挖掘实用能力的场景式教学为主,在讲师设计的业务场景下由讲师不断提出业务问题,再由学员循序渐进思考并 *** 作解决问题的过程中,帮助学员掌握真正过硬的解决业务问题的数据挖掘能力。点击预约免费试听课。
以上就是关于Python好学吗全部的内容,包括:Python好学吗、为什么说Python是大数据全栈式开发语言、《R语言编程指南》epub下载在线阅读,求百度网盘云资源等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)