在学习Python之前,选择好方向
相信大多人在学习Python之前 肯定都自己了解过这门语言,也知道Python有很多的学习方向,比如说数据采集方向(爬虫),或者Web开发方向,也可能是最近特别火热的人工智能方向。每个方向所需要的技术都是不尽相同的,所以在大家学习完成Python的基础语法之后,一定要慎重选择自己之后的进阶方向。推荐你看看百战程序员高淇老师的python400集,学习变成思维
学习Python的基础语言
就像学习其他编程语言或者是学习一门外语一样 ,大家应该从Python的基础语法开始学习 ,了解什么是Python的变量 什么是循环 什么是函数,什么是模块。类等等。总之,基础是学习以后高级开发的基石。
学习Python的文件操作
学习完基础之后,大家肯定要进行一些简单的联系。文件的操作是大家不二的选择,因为无论是文本文件。XML格式的文件还是Office办公系列的文件。大家统称之为文件操作。
大家在学习文件操作的时候,要学习文件的写入和读取 以及了解各种文件之间的读写不同知识点。相信在学习完成之后,对于文件的操作 大家一定会得心应手。
学习Python的数据库编程
在大家学习完成Python的文件操作处理之后 肯定会对于文件的不便性有一定的理解。所以这个时候大家就要学习Python的数据库编程了。数据库有Mysql数据库,Oracle数据库和Sqlite数据库。Sqlite数据库是Python自身拥有的,而其他的数据库则需要大家安装相应的操作模块。
一般,大家学习Mysql数据库的操作即可。数据库的增加数据,删除数据,以及查询数据 以及对应的SQL语句是大家学习的重点。
学习Python的网络编程
在大家这个时代 ,相信大多数是离不开互联网的,大家要学习网络编程。一般了解一下三个方面就可以了。
1.写出基本的TCP连接,知道编写TCP的各个步骤,例如创建socket、绑定port、端口复用等,对TCP稍微做了解,知道协议的每个字段,了解三次握手
2.了解基本的服务器并发模型,例如多进程、多线程、IO复
3.了解一些网络库例如twiste
偶毕业于克莱门森大学政治学专业。偶曾考虑过是否选择学习计算机科学专业,还在大一那年报名参加了“编程概论”课程,不过很快就退出了。实在是太难了。
毕业后偶一直住在硅谷,偶发现偶需要学习编程。一年后,偶成为了eBay公司的一名中级软件工程师。偶不想让大家觉得这是很轻松就能做到的。实际上,这是极具挑战的一件事。在这一年的不断尝试努力过程中,偶得到了很多乐趣。
1.1 自学的优势
虽然与拥有计算机科学学士、硕士甚至是博士学位的同事一起工作的压力很大,但别忘记了你还有“自学的优势”。你选择学习Python编程,不是出于老师布置的任务,而是因为你内心学习的渴望,这一点是你所拥有的最大优势。苹果公司的创始人斯蒂夫·沃兹尼亚克(Steve Wozniak)就是一位自学成才的程序员;还有因在美国宇航局的阿波罗登月计划中做出卓越贡献而获得总统自由勋章的玛格丽特·汉密尔顿(Margaret Hamilton);还有Tumblr 的创始人大卫·卡普(David Karp),Twitter的创始人杰克·多西(Jack Dorsey),Instagram 的创始人凯文·斯特罗姆(Kevin Systrom),他们都是自学成才的程序员。
1.2 为什么应该学编程
不管你从事什么工作,编程都有助于你的职业发展。学习编程将给你自己赋能。偶喜欢尝试新想法,时刻都有希望启动的新项目。学会编程后,偶就可以坐下来自己实现,而不需要依赖他人。
编程也会提升你在其他方面的技能。因为你熟练掌握了问题解决能力,鲜有其他工作不会因此而受益。偶最近要在Craiglist上租房,搜索并筛选房子是个非常费力的活儿。但是偶写了一个程序来代替偶搜索,最后将结果以邮件形式发送给偶。学会编程,将把你从重复性工作中解放出来。
如果你想成为软件工程师,市场上对这类岗位的需求也日益增长,但是符合要求的候选者却总是供不应求。到,预计将有一百万个编程岗位空缺。即使你的目标不是成为软件工程师,科学和金融等领域的岗位也开始倾向那些拥有编程经验的申请者。
1.3 没有编程经验怎么办?
如果你之前没有任何编程经验,担心自己无法胜任编程工作,偶想想告诉你的是:你完全有能力做到。人们对程序员有一些常见的误解,比如程序员都得擅长数学。这是错误的印象,不过编程确实是一件困难的工作。幸运的是,专栏涵盖的内容将让这一切变得比你想象得更加容易。
为了提高编程技巧,你应该每天练习编程。挡在你面前的唯一障碍就是无法坚持,所以大家要采取一些措施确保自己能够坚持不懈。准备一张检查清单,来确保每天都有做练习,而且也能够帮助你保持专注。
如果你还需要其他帮助,效率专家Tim Ferris建议采用如下技巧来保持驱动力。事先给家人或朋友一笔钱,如果你在规定的时间内完成了目标,就让他们把钱还给你,否则就将钱捐献给你讨厌的机构。
1.4学习前你需要了解
《零基础学Python》不仅是教你如何使用某种特定的语言编程,还会介绍标准教材中所不包括的其他所有知识点。专栏内分享的是偶在成为软件工程师过程中不得不自学的内容。专栏不适合那些想要随意了解下编程知识、将写代码作为爱好的人,而是专门写给那些希望以编程为职业的人。不管你的目标是成为一名软件工程师、企业家,还是在其他的岗位上使用编程技能,你都是专栏的目标读者。
学会一门编程语言还不够,你还需要学会其他技能,才能像计算机科学家一样地工作。偶会教授大家偶从编程新手到专业软件工程师过程中学到的一切。这个专栏,是为了向有志于编程岗位的人分享他们需要掌握的知识框架。
偶经常从自学编程的朋友那听到这样的反馈:偶现在该做什么?偶还不是一名程序员,也不知道下一步该学什么?因此偶设计了下面的专栏结构。
1.5 专栏的结构
偶的目标不是包罗你需要了解的每个主题的所有细节,而是提供一份指引——一个编程职业发展所需要的所有技术路线图。由此偶将专栏分成五个部分。
第一部分:编程简介。让你尽快写出自己的第一个程序,最好在今天。
第二部分:面向对象编程简介。这部分将介绍不同的编程范式,着重阐述面向对象编程。你会开发一个游戏,体会编程的强大能力。读完这部分后你会沉迷于编程。
第三部分:编程工具简介。将介绍提升编程生产力的不同工具。这时,你已经沉迷于编程,并希望变得更好。你将会学习相关的操作系统、使用正则表达式提升效率、安装并管理他人的程序,以及使用版本控制与其他工程师协作的知识。
第四部分:计算机科学简介。将简要介绍计算机科学知识,主要涵盖两个主题——算法和数据结构。
第五部分:找到工作。最后一部分是关于最佳编程实践,如何找到软件工程师的工作,团队协作以及程序员的自偶提升。偶会分享如何通过技术面试与团队协作的建议,以及如何进一步提升自己的技能。
1.6 从终点出发
偶学会编程的方式,与计算机科学通常的教学方式正好相反。专栏的结构是根据偶自己的方式组织的。一般来说,你会先花很多时间学习理论,理论知识学的太多以至于许多计算机科学的毕业生甚至不知道如何动手编程。杰夫·阿特伍德(Jeff Atwood),在其博客“为什么程序员不会编程”中写道:“和偶一样,许多人都碰到了这样的情况,编程岗位的200位申请者中,有199个根本不会写代码。重申一遍:他们一点代码都不会写。”这种现象直接促使Atwood发明了FizzBuzz代码挑战,一种用来在面试中筛选申请者的编程测试。
《王者之旅》电影中的主角乔什(Josh Waitzkin),在《学习的艺术》一书中回忆了他如何反向学习国际象棋。他没有和其他人一样研究开局,而是从学习象棋残局(棋盘上只剩下少数几个棋子)开始。这样做让他对国际象棋有了更深的理解,并赢得了多次大赛冠军。与此类似,偶认为先学习如何编程再学习理论的方法更高效,因为你会拥有了解背后原理的强烈驱动。这就是为什么专栏一直到第五部分才介绍计算机科学理论,而且内容也尽量精简。虽然理论很重要,但是在你拥有了编程经验之后,理论的价值才更大。
1.7 专栏的格式
专栏的各个章节紧密相关。如果你读到了某些看不懂的概念,可能在前一章已经做了介绍。专栏内尽量避免重复解释,所以牢记这个特点。在给重点词汇下定义时,会使用斜体。每个章节的末尾都有一个词汇表,对该章内出现的斜体名词进行解释。
专栏代码段前的注释为GitHub的网址,读者可于网站直接复制代码。
1.8 专栏使用的技术
为了让读者尽可能的积累编程经验,专栏会介绍多种技术。在某些情况下,必须在许多不同的技术中做出选择。在第20章“版本控制”中,大家将会学习Git的基础知识。Git是一个流行的版本控制系统,选择介绍Git是因为笔者认为它已经成为版本控制的业界标准。专栏中用Python来编写大部分的编程示例,因为它是一门很流行的初学者语言,而且即使从来没有使用过Python的人学习起来也比较简单。此外,目前几乎每个领域对Python开发者的需求都非常大。不过,专栏会尽量做到内容与技术无关——注重概念,而非技术本身。
1.9初学者需要准备的工具
首先需要有一台计算机,以便跟着每个专栏内容进行示例练习。计算机有一个操作系统(operating system),即一个扮演人与计算机物理硬件之间的中间人的程序。可以在屏幕上看到的称为图形用户界面(Graphical User Interface,GUI),它是操作系统的一部分。
台式计算机和笔记本电脑目前有3种常用的操作系统:Windows、UNIX和Linux。
Windows是微软推出的操作系统。UNIX操作系统发明于20世纪70年代,目前最流行的UNIX操作系统是苹果的OS X。Linux则是目前世界上大部分服务器(server)都在使用的一款开源操作系统。服务器指的是执行托管网站等任务的计算机或计算机程序。
开源(open-source)意味着软件不归某个公司或个人所有,而是由一群志愿者维护。Linux和UNIX都是类UNIX操作系统,意味着二者之间非常相似。
如果你喜欢欢迎关注偶的专栏《零基础学Python3》,有问题欢迎给偶留言,偶会第一时间反馈给您。/feoffline/toutiao_wallet_bundles/toutiao_learning_wap/online/article.html?item_id=6681141509619712520&app_name=news_article
谢邀。
学习Python3,基础书籍也有不少,推荐几本入门的供参考吧。
如果英语较好,建议阅读以下两本书的英文原版。简明 Python 教程(《A Byte of Python》)
如果对电脑知识的了解仅限于如何保存文本文件的话,那这本书就是最基础的入门书了。
这本书,或者称为手册,篇幅不大,对Python3做了最简单、简洁的介绍,通过它可以了解Python的基本语法,并开始用Python写程序。
它可能是最适合用以入门,也可能是目前最好的,面向每一位新手甚至是有经验的用户的教材。
NASA 在喷气推进实验室(Jet Propulsion Laboratory) 及深空网络计划中采用了这本书。
同时,这本书是免费的。
年,沈洁元翻译了本书的 1.20 版,译名定为《简明 Python 教程》。,漠伦基于原书 4.0 版重新翻译,制作了本版全新译本,同时沿用同样的译名。
在这里可以在线阅读或者下载电子版,PDF、Epub、Mobi等等。
/book/lenkimo/byte-of-python-chinese-edition/details
“笨办法”学Python(Learn Python the Hard Way)
如果说《简明Python教程》像手册,那么这本书就是实践、练习了。
全书一共52 章,52个习题。通过做习题,编写Python程序,了解Python的输入输出、变量、函数、条件判断、循环、类和对象、代码测试、以及项目的实现等。
可以说,按照这本书,完全独立的做完52章的练习,Python就可以算是入门了。
这本书也可以从官网获得免费版本。国内可以买到的中文版是基于Python2的第三版,知乎上有赵默水发布的Pyton3的中文译本,可以在线阅读。
如果买了本书的第三版,也不影响用于Python3的学习,通过练习,可以具体了解Python2和Python3在某些函数、语法的差别。
以上两本书都是零基础学习Python的入门书籍,如果条件允许,再次建议阅读英文原版进行Python3的学习。
零基础的意思是以前没有接触过计算机程序设计也可以快速上手。
除此之外,还有很多入门书籍可供选择,不过学完这两本或其中一本,就应该入门了。
入门后就要考虑在哪个方向上继续学习Python应用了,web开发?机器学习?数据科学?等等。
此时,就可以在其中一个领域选择合适的书籍进行深入了。学习书籍很多,选择适合自己的就好。
以上供参考,希望对你有帮助。
总结,以上就是关于python基础教程 电子书以及python从入门到精通各个阶段都应该看那些书的经验分享,卡友有疑问可以加wx或扫码加群!
python基础教程 电子书 python从入门到精通各个阶段都应该看那些书? – python – 前端 python 递归抓取图片