如果你学过其他的语言,再学 Python 将会让你的技能树大大地拓宽,有能力涉足更多的领域。
学习编程从入门到放弃的人不计其数,很大程度上是因为,产出和投入的精力完全不成正比。
而学习 Python,几行代码就可以实现一个爬虫,几个函数就可以做简单的数据分析,写一个小工具、小游戏也是分分钟的事情……这种成就感,会激发你最原始的兴趣。
那如何系统学习Python呢?一般大家会经历以下几个阶段。
1、了解编程基础
一是变量、编程规范、基础语法等,这也是能够上手编写 Python 代码的前提。
二是数据结构,字符串、列表、字典、元组这些需要非常熟练,数据类型将贯穿你整个编程的始终。
这个部分一些简单的练习就是,自己构造一个数据类型,然后去实现基本的用法。比如你自己构造一个列表,实现列表中数据的访问、更新、删除等基本操作,比如 len()、max()、min() 函数,以及 append()、count()、extend() 等方法。
函数和方法是实现数据增删改查的基本途径,如果你在实际操作中遇到数据操作的问题,可以在具体的数据类型下查找相关用法。
PS:这些理论基础可以在网上找视频学习或者看书学习。
2、Python函数及流程控制
学习 Python 的函数和控制语句,是真正去解决问题的过程。如何实现判断和循坏,如何将固定的功能模块封装成函数,这些不仅是写出代码的必要条件,也是训练编程思维的必经之路。
函数这个部分无外乎函数的定义、函数调用以及参数传递,但是要能够娴熟地写出函数实现对应的功能,需要注意的细节很多,也需要不断地训练。
流程控制则相对要好掌握一些,条件语句和循坏语句在不同的场景下练习几遍,知道判断和循环实现的过程,基本上就没问题了。
其实到这个地方,基本的Python知识你已经掌握了,你可以自己去做一些小项目,比如猜数字、各种转换器、记账工具……
3、利用 Python 做些事情
通常在学习一段时间之后,你就会有自偶怀疑的过程,貌似真的懂了,但是离做出实际的东西又很远,这些东西是否有用?
这个时候不妨了解一些第三方库,你可以做更多的事情。比如用pandas作数据处理,用matplotlib做数据可视化分析,用BeautifulSoup写爬虫,利用Flask搭建网站……这些别人搭好的轮子,你直接拿来用就可以了。当然像写爬虫和网站,你还需要了解其他方面的一些知识(比如HTTP、HTML、JS、数据库等)。
对于不同的库,内部的方法、函数你还需要去熟悉,开始的时候先掌握少部分最常用的方法,在遇到实际的问题的时候,再去查对应的更多的用法,这样会更高效。
4、深入 Python 编程
其实第三个阶段反复练习实践,你已经基本具备一些工作的技能了,比如Python 数据分析、网络爬虫、写工具脚本……
首先你要了解Python的高级特性,如迭代器、生成器、装饰器等,了解类和面向对象的理念。深入下去,你可以去探索Python的实现原理,Python的性能优化,跳出Python语言本身,去了解计算机的交互原理,还有很长的路要走,但并不是每一个人都需要这个过程。
但这些高屋建瓴的东西,又是你在这个领域立足生根的重要条件,对于坚定走技术方向的人来说,这个过程是有必要的。这个时候你再去做应用层面的一些东西,又会有更加深刻的理解。
PS:到了这个阶段,自己很可能遇到一个小坎就过不去,这样急需一个前辈或者老师的指导,也许一句话就能解决你一个月解不开的难题。
总结下来,学习Python,最常见的坑有这些:
1.很难找到合适且优质的学习资源,难以下手,或者随便找一些材料开始学习,极其容易从入门到放弃;
2.遇到问题不知道如何寻找解决办法,甚至连问题都描述不清楚,经常被一些细小的问题卡住,学习效率不高;
3.在理论学习中无法自拔,学习很久之后,发现还是不知道如何在实际的项目中去应用,缺乏解决问题的能力;
4.看到别人的案例觉得好像是那么回事,但是自己去写代码的时候依然很困难,无法训练编程思维。
哪些编程语言的官方网站好看?
九种主流编程语言:Python、Java、C、C++、JavaScript、C#、Ruby、PHP以及Objective-C。对于每种编程语言,大家都能够看到由其打造的顶级应用成果,相关职位的平均薪酬(美国)以及该语言的优势与弊端。
当前使用最多时PHP语言,要说php7功能会比较全,
Java用于游戏设计网站比较多,
你要问编程语言的官方网站好看,这问题要怎么说,网站做出来,主要还是靠设计网页版技术实力。这问题就不回答
新手用什么软件编程比较好?
刚入门的新手还处于语言关,过多的关注开发工具IDE会显得有些方向不准;偶当时作为一个新手的时候,对于语言和IDE傻傻分不清,后来经过不断的学习才发现语言和工具两个是没有关系的,作为新手,最先关注的是语法的问题,其次再寻找一个趁手的IDE工具。
1、语言和工具
一般的语言和工具的搭配如下(windows平台):
java和Eclipse
C、C++和visual studio系列(包括vc6.0)
html前端和vscode或者hbuilder
python和PyCharm这是较为常见的的搭配,不过人各有所爱,不能代表所有;你可以根据自己的需求大致的深入的选择一个进行探究;
2、到底那个好?
这是一些新手程序员的最常见的问题,当年偶也是一直在纠结到底选择哪一个既能跟得上潮流,又能解放生产力,提高工作效率。不过呢,说真的,在新手时期,大家工位关注的应该是语法的问题,应该一字一字的敲出来看看效果怎么样,所以在这个时候去纠结这些问题现得有些浪费时间。因此在这个阶段,大家还有一种选择:请百度“云编程”,这种平台只有简简单单的界面,却可以支持几十种语言的简单程序,这是很好的进行语法训练的平台。
3、然后呢?
当大家进阶到一定水平,选定以后的研究方向后,这时才迫切的要求大家拿出一款趁手的武器,不过呢,这个时候大家只是具备的一定的基础,对这些IDE仍然不是很熟悉,因此,最佳的选择就是“选择大多数人所选的”,为什么要这样呢?这是因为在写程序,哦,不,写bug的时候大家会遇见很多让大家头疼的问题,如果你选择了小众的软件,sorry,很可能你会搜不到解决方案,然后就是重装重装再重装。因此,选择一款主流的IDE是最佳的选择,你可以看到很多的解决方案,同时,也被大多数人所支持维护,前景较好。
当然,当你达到了相当高的水平,呵呵,谁用工具啊,俺们都是二进制搞得~
欢迎关注,点个赞呗!