黑马程序员技术交流社区

标题: 程序猿python学习感悟 [打印本页]

作者: caterpillar    时间: 2019-4-25 16:45
标题: 程序猿python学习感悟
随着人工智能 大数据的火热 Python成为了广大科学家和普通大众的学习语言。在学习Python的过程中 有很多人感到迷茫 不知道自己该从什么地方入手,今天我就来说一些新手该如何学习Python编程。以下是学习python的心得体会。
       相信大多人在学习Python之前 肯定都自己了解过这门语言,也知道Python有很多的学习方向,比如说数据采集方向(爬虫),或者Web开发方向,也可能是最近特别火热的人工智能方向。每个方向所需要的技术都是不尽相同的,所以在我们学习完成Python的基础语法之后,一定要慎重选择自己之后的进阶方向。
       就像学习其他编程语言或者是学习一门外语一样 ,我们应该从Python的基础语法开始学习 ,了解什么是Python的变量 什么是循环 什么是函数,什么是模块。类等等。总之,基础是学习以后高级开发的基石。
       学习完基础之后,我们肯定要进行一些简单的联系。文件的操作是我们不二的选择,因为无论是文本文件。XML格式的文件还是Office办公系列的文件。我们统称之为文件操作。
       我们在学习文件操作的时候,要学习文件的写入和读取 以及了解各种文件之间的读写不同知识点。相信在学习完成之后,对于文件的操作 大家一定会得心应手。
       学习任何一门语言,选择操作系统,搭建开发环境是必不可少的。学习Python,这里推荐Linux系统,在Linux平台一般都是配置好Python开发平台,安装好系统就可以写程序。如果你选择windows,就要自己下载并配置好Python开发环境。
       选择一门重视大脑学习的书籍,在这里推荐《Head First Python》,这是我看过最注重大脑学习的书籍,对于新手入门极有好处。
       仔细阅读有关Python的书籍,好记心不如烂笔头,一定要做笔记,过后回顾笔记。书上给出的练习,一定要做,并且争取全部弄懂。书上有的练习代码,一定要自己调试一遍,知其所以然.
       每天的编码必不可少,既然选择学习编程,学习Python,坚持编码应该是必须做到的。没有代码积累,要写出高质量的代码,几乎不可能。
       在写过不少基础代码之后,可以去各大Python相关的网站阅读别人的代码,多阅读别人的也是提高自己的编码水平的很好途径,同时,有把自己的代码分享给别人阅读,一边互相交流促进。
       最重要的是明白学python的目的是什么,是数据挖掘还是想刷个火车票啥的,是机器学习还是搞个小脚本装下,是想成为厉害的harker还是强大的web开发者。只有明白了目的,才有学下去的动力。
       环境搭建。下载并安装好python及IDE,你需要明白什么是IDE,什么是命令行等,并配置好路径及环境变量。在这里推荐大家找下免费的pycharm,风格比较舒服,但是会比较慢。
  基础练习。没有编程基础的可以先过一下基础,可以找本书练,也可以在网上寻找视频练习。现在网络这么发达,应该加强在网上找答案的能力。
      根据自己的目标去深耕。知识的学习都是由浅入深的,先掌握基础,再根据自己的目标去练习,才会有效果。不要三心二意,今天学十分钟爬虫,明天学5钟机器学习什么的。
       不断练习,不断练习。量变到质变的过程。只有在敲代码的过程中才会遇到自己的问题,解决了就提升了。
       一个完整的计算机系统,是由硬件系统和软件系统两大部分组成的。
       硬件系统:主要分为主机和外设两部分,是指那些构成计算机系统的物理实体,它们主要由各种各样的电子器件和机电装置组成。
       从ENIAC(世界上第一台计算机)到当前最先进的计算机,硬件系统的设计采用的都是 冯·诺依曼体系结构。
       运算器: 负责数据的算术运算和逻辑运算,即数据的加工处理。
       控制器: 是整个计算机的中枢神经,分析程序规定的控制信息,并根据程序要求进行控制,协调计算机各部分组件工作及内存与外设的访问等。
       运算器和控制器统称中央处理器(即CPU)
       存储器: 实现记忆功能的部件,用来存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。
       输入设备: 实现将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。
       输出设备: 实现将计算机处理后生成的中间结果或最后结果(各种数据符号及文字或各种控制信号等信息)输出出来。
       软件系统:主要分为系统软件和应用软件,是指计算机证运行所需的各种各样的计算机程序。
       系统软件的任务是既要保证计算机硬件的正常工作,又要使计算机硬件的性能得到充分发挥,并且为计算机用户提供一个比较直观、方便和友好的使用界面。
       操作系统:是一种方便用户管理和控制计算机软硬件资源的系统软件,同时也是一个大型的软件系统,其功能复杂,体系庞大,在整个计算机系统中具有承上启下的地位。我们操作计算机实际上是通过操作系统来进行的,它是所有软件的基础和核心。
       语言处理程序:也称为编译程序,作用是把程序员用某种编程语言(如Python)所编写的程序,翻译成计算机可执行的机器语言。机器语言也被称为机器码,是可以通过CPU进行分析和执行的指令集。
       1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了 :类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。
       Python语法很多来自C,但又受到ABC语言的强烈影响。来自ABC语言的一些规定直到今天还富有争议,比如强制缩进。 但这些语法规定让Python容易读。另一方面,Python聪明的选择服从一些惯例,特别是C语言的惯例,比如回归等号赋值。龟叔认为,如果“常识”上确立的东西,没有必要过度纠结。
       Python从一开始就特别在意可拓展性。Python可以在多个层次上拓展。从高层上,你可以直接引入. py文件。在底层,你可以引用C语言的库。Python程序员可以快速的使用Python写. py文件作为拓展模块。但当性能是考虑的重要因素时,Python程序员可以深入底层,写C程序,编译为.so文件引入到Python中使用。Python就好像是使用钢构建房一样,先规定好大的框架。而程序员可以在此框架下相当自由的拓展或更 改。
       最初的Python完全由龟叔本人开发。Python得到龟叔同事的欢迎。他们迅速的反馈使用意见,并参与到Python的改进。龟叔和一些同事构成Python的核心团队。他们将自己大部分的业余时间用于hack Python。随后,Python拓 展到研究所之外。Python将许多机器层面上的细节隐藏,交给编译器处理,并凸显出逻辑层面的编程思考。Python程 序员可以花更多的时间用于思考程序的逻辑,而不是具体的实现细节。这一特征吸引了广大的程序员。Python开始流行。
       简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。       易学:就如同你即将看到的一样,Python极其容易上手。前面已经提到了,Python有极其简单的语法。
       免费、开源:Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创造并经常改进着的。
       高层语言:当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
       可移植性:由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC、Symbian以及Google基于linux开发的Android平台!
       解释型语言:一个用编译型语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python程序更加易于移植。
       面向对象:Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。
       可扩展性:如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
       丰富的库:Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
       规范的代码:Python采用强制缩进的方式使得代码具有极佳的可读性。
       人生苦短,我学python,未来的时代,你我做主!



作者: 柠檬leung不酸    时间: 2019-4-28 16:43
不论你在什麽时候开始,重要的是开始之後就不要停止。
作者: 万年吃瓜    时间: 2019-5-10 11:27
你有多努力,就有多特殊。人只有坚持把自己变好,就真的会越来越好。
作者: 卡哇伊伊    时间: 2019-6-4 18:27
加油,一起学习丫
作者: 夜听雨    时间: 2019-7-3 18:31
不忘初心,坚持
作者: 柠檬leung不酸    时间: 2019-7-17 14:00
今天很残酷 明天更残酷 后天很美好,坚持:5_229:}
作者: 卡哇伊伊    时间: 2019-7-30 09:31
加油,一起学习丫
作者: 柠檬leung不酸    时间: 2019-8-7 16:32
除了恐惧和欲望,还有什么可以激励自己长期地努力?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2