欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    Python编程无师自通.docx

    • 资源ID:675892       资源大小:623.71KB        全文页数:191页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Python编程无师自通.docx

    Pytholl编程无师自通1 .第1章概述2 .第2章起步3 .第3章编程概论4 .第4章函数5 .第5章容器6 .第6章字符串操作7 .第7章循环8 .第8章模块9 .第9章文件10 .第10章综合练习11 .第11章练习12 .第二部分面对对象编程简介13 .第12章编程范式14 .第13章面向对象编程的四大支柱15 .第14章深入面向对象编程16 .第15章综合练习17 .第三部分编程工具简介18 .第16章BaSh19 .第17章正则表达式20 .第18章包管理器21 .第19章版本控制22 .第20章融会贯通23 .第四部分计算机科学简介24 .第21章数据结构25 .第22章算法26 .第五部分找到工作27 .第23章最佳编程实践28 .第24章第一份编程工作29 .第25章团队协作30 .第26章更多学习资料31 .第27章下一步第1章概述“大多数优秀的程序员从事编程工作,不是因为期望获得报酬或得到公众的称赞,而是因为编程是件有趣的事儿。”林纳斯托瓦兹(LinusTorvalds)我毕业于克莱门森大学政治学专业。我曾考虑过是否选择学习计算机科学专业,还在大一那年报名参加了“编程概论”课程,不过很快就退出了。实在是太难了。毕业后我一直住在硅谷,我发现我需要学习编程。一年后,我成为了eBay公司的一名中级软件工程师(介于初级工程师与高级工程师之间的一个职位)。我不想让大家觉得这是很轻松就能做到的。实际上,这是极具挑战的一件事。在这一年的不断尝试努力过程中,我得到了很多乐趣。刚开始,我学习的是如何用流行的编程语言PythOn来进行编程。但是本书不仅是教你如何使用某种特定的语言编程(确实会有这方面的内容),还会介绍标准教材中所不包括的其他所有知识点。本书分享的是我在成为软件工程师过程中不得不自学的内容。本书不适合那些想要随意了解下编程知识、将写代码作为爱好的人,而是专门写给那些希望以编程为职业的人。不管你的目标是成为一名软件工程师、企业家,还是在其他的岗位上使用编程技能,你都是本书的目标读者。学会一门编程语言还不够,你还需要学会其他技能,才能像计算机科学家一样地工作。我会教授大家我从编程新手到专业软件工程师过程中学到的一切。我写作本书,是为了向有志于编程岗位的人分享他们需要掌握的知识框架。编程概论的书籍都大同小异一用PythOn或Ruby介绍编程的基础知识,然后就让你自己摸索。我经常从读完类似书籍的朋友那听到这样的反馈:我现在该做什么?我还不是一名程序员,也不知道下一步该学什么。本书,就是我给出的答案。1.1 本书的结构本书中一章所涵盖的许多主题可能都可以独立成书。我的目标不是包罗你需要了解的每个主题的所有细节,而是提供一份指引一个编程职业发展所需要的所有技能的导览。第一部分:编程简介。让你尽快写出自己的第一个程序,最好在今天。第二部分:面向对象编程简介。这部分将介绍不同的编程范式,着重阐述面向对象编程。你会开发一个游戏,体会编程的强大能力。读完这部分后你会沉迷于编程。第三部分:编程工具简介。将介绍提升编程生产力的不同工具。这时,你已经沉迷于编程,并希望变得更好。你将会学习相关的操作系统、使用正则表达式提升效率、安装并管理他人的程序,以及使用版本控制与其他工程师协作的知识。第四部分:计算机科学简介。将简要介绍计算机科学知识,主要涵盖两个主题一算法和数据结构。第五部分:找到工作。最后一部分是关于最佳编程实践,如何找到软件工程师的工作,团队协作以及程序员的自我提升。我会分享如何通过技术面试与团队协作的建议,以及如何进一步提升自己的技能。1.2 从终点出发我学会编程的方式,与计算机科学通常的教学方式正好相反。本书的结构是根据我自己的方式组织的。一般来说,你会先花很多时间学习理论,理论知识学的太多以至于许多计算机科学的毕业生甚至不知道如何动手编程。杰夫阿特伍德(JeffAtWoOd),在其博客“为什么程序员不会编程”中写道:“和我一样,许多人都碰到了这样的情况,编程岗位的200位申请者中,有199个根本不会写代码。重申一遍:他们一点代码都不会写。”这种现象直接促使AtWood发明了FiZZBUZZ代码挑战,一种用来在面试中筛选申请者的编程测试。大部分人都通不过测试,这也是为什么你要学习本书并掌握实践中要使用到技能。放心吧,在本书中你还会学到如何通过FiZZBUZZ测试的。王者之旅电影中的主角乔什(JoShWaitZkin),在学习的艺术一书中回忆了他如何反向学习国际象棋。他没有和其他人一样研究开局,而是从学习象棋残局(棋盘上只剩下少数几个棋子)开始。这样做让他对国际象棋有了更深的理解,并赢得了多次大赛冠军。与此类似,我认为先学习如何编程再学习理论的方法更高效,因为你会拥有了解背后原理的强烈驱动。这就是为什么本书一直到第五部分才介绍计算机科学理论,而且内容也尽量精简。虽然理论很重要,但是在你拥有了编程经验之后,理论的价值才更大。1.3 你不是一个人在战斗毕业后再学习编程,已经越来越常见。StackOverflow(一个程序员在线社区)在2015年的一份调查中显示,48%的受访者没有计算机科学学位。1.4 自学的优势在eBay工作期间,我的团队中有从斯坦福大学、加州大学和杜克大学计算机科学专业毕业的程序员,还有两名物理学博士。当时我25岁,而年仅21岁的同事对编程和计算机科学的知识比我强10倍这个事实,让我尤其惶恐。虽然与拥有计算机科学学士、硕士甚至是博士学位的同事一起工作的压力很大,但别忘记了你还有“自学的优势”。你选择读这本书,不是出于老师布置的任务,而是因为你内心学习的渴望,这一点是你所拥有的最大优势。苹果公司的创始人斯蒂夫沃兹尼亚克(SteVeWozniak)就是一位自学成才的程序员;还有因在美国宇航局的阿波罗登月计划中做出卓越贡献而获得总统自由勋章的玛格丽特汉密尔顿(MargaretHamilton);还有TUmbIr的创始人大卫卡普(DavidKarp),TWitter的创始人杰克多西(JackDorsey),Instagram的创始人凯文斯特罗姆(KevinSystrom),他们都是自学成才的程序员。15为什么应该编程不管你从事什么工作,编程都有助于你的职业发展。学习编程将给你自己赋能。我喜欢尝试新想法,时刻都有希望启动的新项目。学会编程后,我就可以坐下来自己实现,而不需要依赖他人。编程也会提升你在其他方面的技能。因为你熟练掌握了问题解决能力,鲜有其他工作不会因此而受益。我最近要在CraigIiSt上租房,搜索并筛选房子是个非常费力的活儿。但是我写了一个程序来代替我搜索,最后将结果以邮件形式发送给我。学会编程,将把你从重复性工作中解放出来。如果你想成为软件工程师,市场上对这类岗位的需求也日益增长,但是符合要求的候选者却总是供不应求。到2020年,预计将有一百万个编程岗位空缺。即使你的目标不是成为软件工程师,科学和金融等领域的岗位也开始倾向那些拥有编程经验的申请者。1.6 坚持不懈如果你之前没有任何编程经验,担心自己无法胜任编程工作,本书想告诉你的是:你完全有能力做到。人们对程序员有一些常见的误解,比如程序员都得擅长数学。这是错误的印象,不过编程确实是一件困难的工作。幸运的是,本书涵盖的内容将让这一切变得比你想象得更加容易。为了提高编程技巧,你应该每天练习编程。挡在你面前的唯一障碍就是无法坚持,所以我们要采取一些措施确保自己能够坚持不懈。准备一张检查清单,来确保每天都有做练习,而且也能够帮助你保持专注。如果你还需要其他帮助,效率专家TimFerriS建议采用如下技巧来保持驱动力。事先给家人或朋友一笔钱,如果你在规定的时间内完成了目标,就让他们把钱还给你,否则就将钱捐献给你讨厌的机构。1.7 本书的格式本书的各个章节紧密相关。如果你读到了某些看不懂的概念,可能在前一章已经做了介绍。书中尽量避免重复解释,所以牢记这个特点。在给重点词汇下定义时,会使用斜体。每个章节的末尾都有一个词汇表,对该章内出现的斜体名词进行解释。书中代码段前的注释为GitHUb的网址,读者可于网站直接复制代码。1.8 本书使用的技术为了让读者尽可能的积累编程经验,本书会介绍多种技术。在某些情况下,必须在许多不同的技术中做出选择。在第20章“版本控制”中(对于不了解版本控制的读者,稍后会有解释),我们将会学习Git的基础知识。Git是一个流行的版本控制系统,选择介绍Git是因为笔者认为它已经成为版本控制的业界标准。书中用PythOn来编写大部分的编程示例,因为它是一门很流行的初学者语言,而且即使从来没有使用过PythOn的人学习起来也比较简单。此外,目前几乎每个领域对Python开发者的需求都非常大。不过,书中会尽量做到内容与技术无关注重概念,而非技术本身。首先需要有一台计算机,以便跟着本书进行示例练习。计算机有一个操作系统(OPeratEgsystem),即一个扮演人与计算机物理硬件之间的中间人的程序。可以在屏幕上看到的称为图形用户界面(GraPhiCaIUSerInlerface,GUI),它是操作系统的一部分。台式计算机和笔记本电脑目前有3种常用的操作系统:Windows.UNIX和LinUx。WindoWS是微软推出的操作系统。UNIX操作系统发明于20世纪70年代,目前最流行的UNIX操作系统是苹果的。SX。LinUX则是目前世界上大部分服务器(SerVer)都在隹席的一款开源操作系统。服务器指的是执行托管网站等任务的计算机或计算机程序。开源(open-source)意味着软件不归某个公司或个人所有,而是由一群志愿者维护。LinUX和UNIX都是类UNIX操作系统,意味着二者之间非常相似。本书假设读者已经有一台运行WindowssOSX或UbUmU(LinUX的一个流行版本)操作系统的计算机。1.9 术语表FizzBuzz:用来在编程面试中筛选候选者的一种编程测试。操作系统:扮演计算机物理组件与人之间的中间人的一个程序。图形用户界面(GUl):操作系统的一部分,用户在屏幕上看到的内容。开源:软件不归某个公司或个人所有,而是由一群志愿者维护。Windows:微软推出的操作系统。UNlX:发明于20世纪70年代的一种操作系统,苹果的OSX是UNIX的一个版本。1.inux:世界上大部分服务器(SerVer)都在使用的一款开源操作系统。服务器:执行特定任务(如托管网站)的计算机或计算机程序。类UNIX操作系统:UNIX和LinUX。1.10 挑战练习创建一个每日检查清单,在其中加入练习编程这个任务。第2章起步“一名优秀的程序员,在穿越单行道时也会确认双向的来车情况。”道格拉斯林德(DOUgLinder)2.1什么是编程编程(programming)指的是编写让计算机执行的指令。这些指令可能告诉计算机打印Hell0,World!,从因特网爬取数据,或者读取某个文件的内容并保存至数据库。这些指令被称为代码(code)o程序员用许多不同的编程语言来编写代码。在过去,编程的难度更大,因为程序员必须要使用晦涩难懂的底层编程语言(low-levelprogramminglanguage),如汇编语言(assemblylanguage)o说一门编程语言是底层语言,指的是其与高级编程语言(读起来更像英语的编程语言)相比,更接近用二进制(0和1)编写指令,因此也更难理解。下面是一个用汇编语言编写的简单程序:#http:/z6facmkglobal_startsection.text_start:movrax,1movrdi,1movrsi,messagemovrdx,13syscall;exit()movea×,6xorrdi,rdimessagesyscalldb"HellozWorld!",10下面则是用一门现代编程语言编写的同一个程序:1 #http:/234 print("Hello,World!")显而易见,如今程序员的工作容易多了。不再需要花费大量时间学习晦涩的底层语言才能编程,相反只要学习一门非常易读的语言PythOn即可。2.2 什么是PythOnPythOn是一门开源编程语言,由荷兰程序员吉多范罗苏姆(GuidovanRossum)发明,并以英国喜剧团体“蒙提派森(MontyPython)的飞行马戏团”命名。吉多发现程序员读代码的时间比写代码花的时间更长,因此他就发明了这门非常易读的语言。Python目前已经是世界上最流行最易学的编程语言之一。所有的主流操作系统和计算机都可运行Py由。n,可将其用于从搭建网络服务器到创建桌面应用等所有领域。由于其如此流行,市场上对Python开发者的需求也很大。2.3 安装Python需要先安装PythOn3才能完成本书中的示例练习。可以从http:/python.org/downloads下载针对WindOWS和OSX的Python版本。如果使用的是UbUmu,操隹系统中默认安装了Python3o请确保下载的是Pythoi13,而不是Pythcm2。本书中的部分示碗不适用于Python2。32位和64位操作系统的计算机均可使用Python。如果计算机是2007年后购买的,它很有可能是一台64位操作系统的计算机。如果不确定操作系统是32位还是64位,只需在网络上搜索相关内容即可确定。如果使用的是WindoWS或MaC计算机,下载PythOn的32位版或64位版安装包,打开文件并按提示操作。还可以浏览http:/theselftaughtprogrammer.io/insta11python网页,观看介绍如何在每个操作系统下安装PythOn的视频。2.4 问题解答从上节开始,读者就需要安装好PythOn了。如果遇到了问题,可以直接跳到第2章的“获得帮助”一节。2.5 交互式SheIlPython自带了一个叫IDLE的程序,全称是交互式开发环境;它也是“蒙提派森的飞行马戏团”的成员埃里克艾多尔(Ericklle)的姓氏。我们将在IDLE中输入PythOn代码。安装好PythOn之后,在EXPlOrer(PC)、Finder(Mac)或NaUtilUS(Ubuntu)中搜索IDLEo建议为其创建一个桌面快捷方式,以方便查找。点击IDLE程序的图标,带有如下文字说明的程序就会启动(准确的文字可能会有所变化,但是即使没有说明或略有不同都不用担心):Python3.5.1(v3.5.1:37a07cee5969,Dec52015,21:12:44)GCC4.2.1(AppleInc.build5666)(dot3)ondarwinType"copyright","credits"orlicense()"formoreinformation.>>>这个程序被称为交互式SheI1。可以直接在其中键入Python代码,程序就会打印出结果。在提示符>>>后面键入:1print("Hello,World!")然后按下回车。IDLE可能会拒绝执行从Kin祖e、其他电子书或WOrd等文字处理程序中复制的代码。如果使用复制的代码,且遇到了一个无法解释的错误,尝试直接在窗口中输入代码。并且必须键入与示例中一模一样的代码,包括双引号、括号和其他标点符号。交互式SheIl会打印出HelIo,World!,如图2-1所示。Python3.5.1ShellPython3.5.1(v3.5.1:37a07cee5969,Dec521S,21:12:44)GCC4.2.1(AppleInc.build5666)(dot3)ondarwinType"copyright","credits-or-IicenseO"formoreinfornaion.»>WARNING:TheversionofTcl/Tk(8.5.9)inusemaybeunstable.Visithtp:/www.python.orgdownloodMctcltkforcurrentinformation.»>PrintcIHeII。,World!")Hello,World!»>l图2-1交互式ShelI打印示例在编程界有一个传统,每当教别人一门新编程语言时,第一个程序就是如何打印Hello,worldo所以,恭喜你刚刚写出了自己的第一个程序。2.6 保存程序交互式Shen对于快速计算、测试小块代码和不会被重复利用的短程序来说很有用。还可以用IDLE保存一个程序以便重复使用。启动IDLE应用,点击“文件”按钮(IDLE编辑器左上角的菜单栏),然后选择“创建新文件:选择该选项后,会打开一个文本编辑器,它的背景通常是白色的。你可以在编辑器中写代码,再保存以便之后运行。运行代码时,程序输出会出现在交互式SheIl中。再次运行之前,需要保存在编辑代码时所做的修改。在文本编辑器中输入“Hello,Work1!”程序,如图22所示。wUntitIederint("Hello,World!")图2-2在文本编辑器的“Hello,World!”再次回到“文件”菜单,然后选择“另存为”。将文件命名为hello_world.py并保存。Python文件的名称必须以.py结尾。保存好文件之后,点击“运行”菜单(也在IDLE编辑器左上角的菜单栏中),并选择“运行模块”。也可以直接按快捷键F5键,相当于从菜单栏中选择“运行模块”按钮。在交互式SheIl中将会打印出Hen。,world!,就好像你已经输入了这行代码。但现在,由于已经保存好了程序,之后你可以想运行多少次就运行多少次。你创建的这个程序,实际只是一个以.py扩展名结尾的文件。给文件起的名字he11-world.py完全是随意选择的,可以改成其他任何名称。正如本例所示,用PythOn编程只需要将文本键入文件中,然后使用交互式SheII运行即可。很简单,对吧?2.7 运行示例程序本书将给出大量代码示例,以及最后的运行结果。碰到类似内容时,你应该试着输入相同的代码,自己运行一次。短小的示例最好在交互式Sh川中运行,文本编辑器更适合希望保存并编辑的程序。如果在交互式ShelI中键入的代码有错误,比如拼写错误,导致代码出错,就必须得重新输入所有代码。而使用文本编辑器则可以省下不少工作,如果犯错了,只需要纠正并重新运行即可。二者区别很大的另一个原因,是从文件运行程序与从交互式SheIl运行程序的输出会略有不同。如果直接在交互式Shell中键入工。并按下回车,交互式SheIl会输出1。但如果在.py文件中输入1。并运行,则不会有任何输出。这个区别可能会让人困惑,因此在运行程序时,如果没有得到书中示例相同的输出,请注意是从哪里运行的程序。2.8 术语表编程:编写让计算机执行的指令。代码:程序员编写的、让计算机执行的指令。底层编程语言:与高级编程语言(读起来更像英语的编程语言)相比,更接近用二进制(0和1)编写指令的编程语言。汇编语言:一种很难阅读的编程语言。高级编程语言:一种读起来比底层编程语言更像英语的编程语言。Python:本书介绍的一种易读、开源编程语言。由吉多范罗苏姆发明,并以英国喜剧团体“蒙提派森的飞行马戏团”命名。2.9 挑战练习尝试打印出除Hell0,WorId!以外的文字。答案可从异步社区()本书详情页的配套资源中下载。第3章编程概论“这是我能想到的,唯一可以让我既当工程师又做艺术家的工作。它要求具备极其缜密的技术思维,因为你必须要完成精确的思考,这点我很喜欢。另一方面,它又鼓励你肆意挥洒自己的创意,只有你想不到没有你做不到的。”安迪赫兹菲尔德(AndyHertZfeId)我们的第一个程序打印出了HelIO,world!o接下来打印100次。在交互式Shen中输入如下代码(Prim需要缩进4个空格符):1 #http:/h79ob7s234 foriinrange(10):5 print("Hello,World!")交互式ShelI应该会打印HeIlo,WOrId!100次。即使通常没有这样做的需要,但可以从这个例子中看出编程的强大。你能想到任何其他可以如此简单地做100遍的事情吗?我想不到。这就是编程的厉害之处。3.1示例从现在开始,代码示例会以如下形式出现:1 #http:/h4qntgk234 foriinrange(l):5 print("Hello,World!)»HellozWorld!»HellozWorld!»HellozWorld!打开http:/tinyuH.com/h4qntqk这个链接,就可以看到包含有示例代码的网页,这样如果无法让代码运行,你可以轻松地复制代码,并粘贴到IDLE的文本编辑器中。的后面则是交互式SheIl的输出。全书的每一个编程示例中都会看到,这代表了程序的输出结果(会在交互式Shell中打印出来)。“”表示“等等”。如果示例后没有,就表示该程序没有输出,或者只是在解释概念,输出并不太重要。字体为COUrierNeW的部分,都是某种形式的代码、代码输出或编程术语。例如,上个例子中提到的词for,它就会是CoInierNeW字体。COUrierNeW是一个固定宽度(不等比)的字体,常用来显示编程文本。每个字符的宽度都一致,因此代码对齐后可以很容易地发现缩进和其他特征。可以用交互式SheII或py文件来运行示例代码。但是要注意的是,正如之前提到的,交互式ShelI中的输出与文件运行的输出可能略有不同,因此如果没得到完全一致的输出,原因就在于此。如果有示例要打印输出,但是却没有Print字样,表示应该直接在交互式Shen中输入代码。如果示例中有Print字样,则说明应该从py文件运行代码。3.2注释注释(COmmem)是用英文或其他自然语言写的一行(或一部分)代码,行首均有一个特殊标志告知编程语言忽略这行代码。Python用井号(#)来创建注释。注释的目的是解释代码的功能。程序员通过注释,使得代码更易于阅读。在注释中,可以写下任何内容,只要保持为一行即可,示例如下:1#http:/hut6nwu23#这是一行注释4print("Hello,World!")»Hello,World!只有在代码中执行特别操作,或者代码不清晰易懂的情况下,才需要写注释。尽量少写注释一不要每行代码都写注释,有特殊情况才需要。下面是一个注释多余的例子:1#http:/234#打印HellozWorld!5print("Hello,World!")注释之所以多余,是因为这行代码的功能已经非常明确。下面是一个注释合理的例子:l#http:/z52c8z8234importmath567#对角线的长度81=49w=1010d=math.sqrt(1*2+w*2)即使你完全理解了这段代码,也可能并不知道如何计算长方形的对角线长度,因此这里的注释就是有用的。3.3打印程序不止可以打印HelI0,World!,它可以打印任何内容,只要记得加上双引号。1#http:/zh5g2a3234print("Python")»Python1 #http:/hhwqva2234 print("Hola!")»Hola!5 .4代码行PythOn程序是由一行一行的代码组成的。看下面这个程序:1 #http:/jq2w5ro23行行行 -fro.# # #程序共有3行代码。我们通常用代码所在的行数区别代码。在IDLE中,可以打开“编辑”菜单,选择“前往行”按钮,即可跳转至程序的指定行。在交互式SheII中,一次只能输入一行代码,无法复制粘贴多行代码。有时一段代码比较长,超过了一行,可以用三引号、圆括号、方括号或者大括号扩展至新一行,示例如下:1 #http:/zcd×3yo234 print("""Thisisareallyreally5 reallyreallylonglineof6 code.""")另外,还可以使用反斜杠对代码进行换行:#print("""Thisisareallyreallyreallylonglineofcode.""")上述两个例子的输出结果是一样的。反斜杠可以让彻门检(心”ThisisareallyreallyreallylonglineofCode.和Print放在不同的行,这种情况一般是不允许的。7 .5关键字PythOn等编程语言中有一些具备特殊意义的字,即关键字(keyword)o前面见过的for就是一个关键字,用来多次执行代码。本章中还会学习更多的关键字。8 .6间距我们再来回顾一下那个打印HeIlo,World!100次的程序:1 #http:/glp9xq6234 foriinrange(10):5 print("HellozWorld!")前面已经提到,Print缩进了4个空格符。稍后会解释原因,缩进可以告诉Python解释器代码块的开始与结束。同时要注意,在本书示例中看到的缩进距离,都是4个空格符。如果代码间距不合理,程序将无法执行。其他编程语言没有类似的缩进要求;它们使用关键字或花括号来表示代码开始和结束。以下是用JaVaSCTiPt编程语言编写的同一个程序:l#2304#这是一个JavaScript程序5#不过没法执行678for(i=0;i<10;i+)9console.log("Hello,World!");1)Python的支持者坚信使用必要的缩进可以让Python比其他语言更易读易写。正如上例所示,即使编程语言不强制使用空格,程序员为了让代码更便于阅读,也会倾向于使用空格来分隔代码。6 .7数据类型Python将数据划分成不同的类别,即数据类型(datatype)。在PythOn中,每一个数据值,如2或”Hel1。,world!",被称为对象(object)o本书第二部分会详细介绍数据类型,现在可以把对象看作拥有3个属性的数据值:唯一标识(identity)、数据类型和值。对象的唯一标识,指的是其在计算机内存中的地址,该地址不会变化。对象的数据类型是对象所属的数据类别,这决定了对象的属性,也不会变化。对象的值是其表示的数据,例如数字2的值即为2。Wb耳的九W如果提谡嗷据嶙据韩数蟒蠲乂锹其为中螂§字符串(竟御可噪括的个或多个字符组成的序列。字符(CharaCter)是类似a或1这样的单个符号。可以使用单引号或双引号来表示字符串,但是前后的引号必须保持一致,示例如下:1 #http:/hh5kjwp234 "Hello,World!"»,Hello,World!,1 #http:/234 ,Hello,World!,»,Hello,World!,字符串可用来表示文本,且有自己独特的属性。之前章节中用来计算的数字,也是对象,但不是字符串。整数(1,2,3,4等)的数据类型为整型数据(int,全称为integer)。与字符串一样,整型数据也有着独特的属性。例如,可以将两个整数相乘,但是不能相乘两个字符串。小数(带小数点的数字)的数据类型为Moat。2.1、8.2和9.9999都是数据类型为float的对象,我们称之为浮点数(floating-pointnumber)o与其他所有数据类型一样,浮点数也有自己独有的属性,且一定程度上与整型数据类似。1 #http:/guoc4gy234 2.2+2.2»4.4数据类型为bool的对象被称为布尔值(boolean),仅有TrUe和FaISe两个值。1 #http:/jyllj2k234 True»True1 #http:/jzgsxz4234 False»False数据类型为NoneTyPe的对象,其值永远为None,用来表示数据缺失。1 #http:/h8oqo5v234 None本章后续会介绍如何使用不同的数据类型。5 .8常量和变量你可以把PythOn当成计算器来算术,做加、减、乘、除、鬲等运算。在交互式ShelI中输入以下所有示例:1 #http:/zs65dp8234 2+2»41 #http:/gs9nwrw234 2-2»1 #http:/234 4/2»2.01 #http:/z8ok4q3234 2*2»4常量(constant)是一个永远不会改变的值。上面示例中的每一个数字,都是常量;数字2永远表示的值为2。变量(Variable)则相反,指的是会改变的值。变量由一个或多个字符组成的名称构成,并使用越值符(assignmentoperator)等号蕨予了辰个名称一个值。有些编程语言要求程序员编写变量“声明”,明确说明变量的数据类型。例如,在C语言中可以这样创建变量:1#不用执行2345678int a;a = 144;PythOn的做法更简单;可以直接用赋值符,将某个值赋给变量,即可创建:1 #http:/hw64mrr234 b=1005 b»1下面介绍如何改变变量的值:1 #http:/thw97que234 X=1005 X678 ×=29 X»100»200还可以使用两个变量进行算术运算:1 #http:/z8hv5j5234 X=15 y=16 z=X+y7 Z8 a=X-y9 a»2»编程时经常需要增加(increment)或减小(decrement)某个变量的值。考虑到这个操作非常普遍,Python提供了特殊语法进行增减变量的值。如需增加变量的值,可将该变量赋予给自身,然后在等号的另一侧将变量与希望增加的值相加:1 #http:/234 X=15 ×=X+16 x»11如需减小变量的值,可以执行同样的操作,唯一的区别是要减去所希望的值:#×=1x=x-l»9这些示例都是完全有效的,不过还有一种更简便的方法,示例如下:1#http:/zdva5wq234 X=15 ×+=16 x»111#http:/jqw4m5r234 X=15 X-=I6 ×»9变量不仅仅用于保存整型数的值,还可以表示任何数据类型,示例如下:1 #http:/234hi="HellozWorld!"1#http:/h47ty49234my_float=2.21#http:/h×9xluq234my_boolean=True只要遵守以下4条原则,可以随意命名变量。1 .变量名不能包含空格符。如果想在变量名中使用两个单子,可以在中间加入下划线,如my_variable="Astring!"o2 .变量名只能使用特定的字母、数字和下划线。3 .变量名不能以数字开头。虽然可以使用下划线开头,但是这种命名方式有着特殊的意义,后面内容会提到。因此在此之前尽量避免这种情况。4 .不能使用PythOrI关键字作为变量名。可在网页httpHtheselftaughtprogrammenio/keywords审查着所有美键字。5 .9语法语法(SylItaX)指的是规范一门语言中句子结构,尤其是字词顺序的一整套规则及流程。英语有语法,PythOn也有。在PythOn中,字符串永远被包括在引号内。这就是PythOn的一个语法示例。下面是一个有效的Python程序:1#http:/234print("Hello,World!")程序之所以有效,是因为遵守了Py由On的语法,在定义字符串时用引号包括了文本。如果只是在文本的一侧使用引号,就违背了PythOn的语法,代码将无法运行。6 .10错误与异常如果在编写PythOn程序时无视其语法,那么在运行时将出现错误。PythOn解释器将告知代码无法执行,并给出有关该错误的信息。如果只用一个引号定义字符串,看看会发生什么情况,示例如下:1 #http:/hp2plhs234 #该代码有一个错误567 my_string三"HelloWorld.»File"UserscoryalthoffPycharmProjectsse.py',zline1my_string='dSyntax这段信息表示程序中有一个语法错误。语法错误是致命的,将导致程序无法运行。如果强制执行,Python会报错。错误信息会告诉你错误位于哪个文件,出现在哪一行,以及属于什么类型。尽管这个错误看上去很吓人,但却是很常见的。如果代码中有错误,首先要找到出错的那行代码,找到出错的地方。在本例中,你应该去找代码的第一行,观察一段时间后,会注意到里面只有一个引号。只要在字符串结尾再加上一个引号,即可解决该错误,然后可以重新运行。从这里开始,本书将这样表示错误输出:»SyntaxError:EOLwhilescanningstringliteral为了方便阅读,书中只显示错误信息的最后一行。PythOn有两种错误:语法错误和异常。不属于语法错误的错误,就是异常(except

    注意事项

    本文(Python编程无师自通.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开