Python语言基础学完了,接下来怎么学

Python基础语言的学习已经告一段落,我们用了六节课的时间,介绍了Python语言中最重要的一些知识点,有了这些基础,就能够开始实际做一些小项目了。我一直认为,任何一种语言的深入都取决于使用,如果一直处于语言学习状态,而没有进入到语言使用状态,那是很难把语言学好的。一个惨痛的案例就是英语学习,中国的孩子英语学习了10多年,但还是有很多人无法进行正常的口语交流和书面读写。所以,千万不要觉得之前六节课的内容太少了,这些内容已经涵盖了Python的核心语法知识,接下来就看如何运用了,在运用中进一步掌握高级语法技巧。

编程语言的运用有很多种方式,例如编写一个小游戏,一个Web网站,一个爬虫等,这些都是比较重要的应用开发领域,但是对于仅仅只是学了编程语法的学生来说,直接进入这些项目有些困难,有很多业务和技术的知识需要学习,外面有很多培训机构比较喜欢搞一个小游戏来吸引学生,这个从吸引力的角度是足够的,但大部分学生并不能理解如何运用游戏框架,基本上都是照着老师给的程序敲一遍代码,最后看一下结果觉得很爽,以为是自己做的,但真的回顾一下,自己都搞不清楚游戏是如何运转的,框架是如何使用的,这样的学习根本不能算是学习了编程。

所以我建议对于学生来说,还是要先把编程的基础打扎实,要接触到编程的核心知识。那么编程的核心是什么呢?从计算机的发展来看,计算机科学的诞生是为了解决问题的,它的核心是使用计算机来解决实际生活工作中的问题,计算机作为人类迄今为止最伟大的发明,它大大拓宽了人的能力,现在计算机应用已经渗透到生活的方方面面.学习编程就是为了能够进一步灵活控制这个工具,从而更有效的解决身边的问题,提升个人解决问题的能力。而这个目标也是奥林匹克信息学竞赛的宗旨,奥林匹克竞赛就是要培养,锻炼和考核学生的问题解决能力。

相信很多人从小就听到过奥林匹克竞赛,觉得那是一个非常高端的比赛,一般的学生都无法参加。奥林匹克竞赛分成五门,分别是数学、物理、化学、生物和信息学,其中只有信息学是在学校不教授,依赖于学生自己在外学习的课程,其他四门的选拔一般都是学校老师直接进行挑选的,而信息学,只要你认真学习了,有信心冲刺一下,就能报名参加。由于信息学奥林匹克竞赛是一个国际赛事,最终都是为了参加国际IOI的,所以不管在哪个国家,其对教学内容的要求都是一样的,这个竞赛在国内的选拔赛是NOIP,在美国的选拔赛叫做USACO,在日本,英国,澳大利亚等也都有对应的选拔赛。国内的NOIP以C++为主,不支持Python,不过各位小伙伴可以参加国外的比赛,例如美国的USACO,它是支持Python语言的,美国这个USACO的考试含金量特别高,对于准备留学美国的学生来说,会是一个很重要的背景提升。

很多选择Python语言的小伙伴,内心应该曾经都有过一些纠结,国内的NOIP统一使用

C++,对于出国留学的学生,AP专业课程的则会选择Java,那么为什么要选择Python呢?这里给你几点参考建议:

语言入门快Python是一种脚本语言,支持面向过程,也支持面向对象的开发,还能在交互环境下作为脚本语言使用,它的语言知识点比较简单,很快能够入门,不需要考虑动态内容分配,指针等比较容易出错的概念,是一种能够快速建立孩子兴趣的编程语言。语言适用范围广泛Python是一门通用语言,目前计算机的主要应用领域开发,都可以使用Python语言,包括很多嵌入式开发板,也都支持Python。这样的优势在于,当有一天你写毕业论文,或者真实做一个项目的时候,自己一个人,一门语言就能搞定所有环节了。而如果学习的是C++这种语言,在做一些应用级项目的时候,你就会知道有多痛苦了。能够顺利过渡到人工智能都说接下来的时代是人工智能的时代,等现在的学生毕业的时候,身边的应用应该都是人工智能相关的。而在人工智能领域,Python是第一语言,很多人工智能领域的顶级库都支持Python语言,你可以直接拿过来使用,这样你就可以把主要精力放在业务应用上,而不是在工程代码上耗费很多精力。相信你看到这里,已经决定选择Python继续前行了吧!那如果准备训练计算思维,以解决问题为目标的话,应该继续学习哪些知识呢?这里简单给出一个清单:

语言提高Python中有很多高级用法,例如面向对象编程,这在实际解决问题时,是一个很好的抽象方式,需要进行掌握。还有一些非常好用的函数,以及编程中的一些技巧,这些都需要提高。数据结构所谓的数据,就是存储信息的地方。语言本身有一些基本结构,这个在学习Python的时候都接触过,例如整型,字符串类型,浮点类型等,但是这些只能存储单个信息,如果需要存储多个信息,需要使用集合,例如字典,列表等,这些就是数据结构中要学习的内容。数据结构的核心就是要考虑用什么样的结构存储数据,能够达到最大的效率,不同的问题会对应不同信息,而不同信息的存储和访问就需要使用到不同的数据结构。算法算法原则上是不依赖于编程语言的,当你解决一个真实问题时,首先要从算法层面上给出解决方案,然后才是把这个算法翻译成编程语言。原则上,任何一个问题都有很多种解决方案,在使用计算机解决的时候,要充分利用到计算机的优势,那就是计算能力强,所以有些暴力求解法,在没有计算机的时候可能会认为是笨办法,不可行,但有了计算机后就是很好的算法了。例如以下题目使用计算机就很容易计算,但是人工计算就非常困难:输入正整数n,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a~j恰好为数字0~9的一个排列(可以有前导0),2≤n≤79。

可能很多人都听过:程序设计=算法+数据结构,算法和数据结构是任何程序设计的核心,把这两项掌握后,今后接触各种应用领域的编程都会觉得非常顺利和简单。那学习内容已经有了,为了让你更有动力的学习,再帮你定一个学习目标:可以考虑年底参加USACO考试,这项考试完全是线上考试,而且是免费的,含金量又很高,这么好的考试错过了实在可惜。每年12月份,连续四个月,每个月都会有一个周末举办USACO考试,这是一种最好的检验学习的好机会。那你现在准备好了吗,可以跟着我的进度,持续学习下去,年底决胜USACO!




转载请注明:http://www.aierlanlan.com/rzdk/1406.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了