[关闭]
@zhangyu756897669 2017-08-16T12:39:46.000000Z 字数 2923 阅读 619

Python官方文档4.0

python官方文档


《用python将枯燥的操作自动化》

全面初学者的实际编程。由Al Sweigart撰写。

第0章:介绍

  1. 前言
    “你刚才在两个小时内完成了我们三天要做的工作。”我的大学室友在二十世纪初期在零售电子商店工作。有时候,商店会从其竞争对手那里收到数千种产品价格的电子表格。团队的三名员工将电子表格打印在一堆厚厚的纸上,并将它们分开。对于每个产品的价格,他们会查找店面的价格,并注意竞争对手所销售的所有产品。通常需要几天的时间。

    当我的舍友看到他们坐在地板上,散布着堆放的纸张。他告诉他们: “你知道,如果你有打印件的原始文件,我可以编写一个程序,”
    几个小时后,他写好了一个简短的程序,从文件中读取竞争对手的价格,在商店数据库中找到该产品,并注意竞争对手是否更便宜。他还是编程的新手,他花了大部分时间在编程书中查找文档。实际的程序只运行几秒钟。我的室友和他的同事当天吃了一顿超长的午餐。

    这是计算机编程的强项。一台电脑就像一把瑞士军刀,可以配置无数的任务。许多人花费时间点击和打字来执行重复的任务,不知道如果他们给电脑一个正确的指示。电脑可以在几秒钟内完成他们的工作。

  2. 这本书写什么
    软件是我们今天使用的许多工具的核心,几乎每个人都使用社交网络进行交流,许多人用手机中,有连接网络的电脑,大多数办公室的工作都涉及与计算机交互以完成工作。因此,公司对能够编码的人的需求急剧上升。无数的书籍,互动网络教程和开发人员启动训练营承诺将雄心勃勃的初学者变成具有六位数薪酬的软件工程师。

    这本书并不能使你变成NB的软件工程师,就像只学几个吉他课程不能把你变成摇滚明星一样。但是,如果您是上班族,管理员,学术界或任何使用计算机工作或娱乐的人,您将学习编程的基础知识,以便您可以自动执行简单的任务,如下列:

    • 移动并重命名数千个文件并将其分类到文件夹中
    • 填写在线表单,无需打字
    • 每当网站更新时,从网站下载文件或复制文本
    • 让您的电脑自动通知您
    • 更新或格式化Excel电子表格
    • 检查您的电子邮件并发送预写的回复

    这些任务对于人类而言是简单而费时的,而且它们通常是微不足道的或具体的,没有现成的软件来执行它们。拥有一点编程知识,您可以让您的计算机为您完成这些任务。

  3. 约定
    本书不是作为参考手册设计的;这是初学者的指南。 编码风格有时违反最佳实践(例如,一些程序使用全局变量),但这是使代码更简单的学习方法。这本书是为人们写的一次性代码,所以没有太多的时间花在风格和优雅。复杂的编程概念(如面向对象编程,列表和生成器)由于其复杂性而不被覆盖。经验丰富的程序员可能会指出本书中的代码可以改变以提高效率的方法,但是这本书主要关心的是使程序运行以大化减轻工作

  4. 什么是编程
    电视节目和电影经常显示程序员愤怒地在发光屏幕上打入1s和0s的隐秘流,但现代编程不是那么神秘。编程只是输入计算机执行指令的行为。这些代码的作用可能是压缩一些数字,修改文本,查找文件中的信息,或通过Internet与其他计算机进行通信。
    所有程序都使用基本指令作为构建块。这里有几个最常见的:

    • 先做这个,然后这样做
    • 如果这个条件是真的,执行这个操作,否则,执行另一个操作。
    • 做这个操作的次数
    • 继续这样做,直到这个条件成立为止
      您也可以组合这些步骤来实施更复杂的决策。
  5. 什么是Python
    Python指的是Python编程语言(用于编写有效的Python代码的语法规则)以及读取源代码(用Python语言编写)并执行其指令的Python解释器软件。Python解释器可以从http://python.org/免费下载,还有适用于Linux,OS X和Windows的版本。
    Python的名字来自超现实的英国喜剧组织Monty Python,而不是来自蛇。 Python程序员深深地称为Pythonistas,而Monty Python和蛇形引用通常都是胡椒Python教程和文档。

  6. 程序员不需要知道很多数学
    我听到很多想学习编程的人的焦虑是学习编程需要学习很多的数学,实际上,大多数编程不需要超出基本算术的数学知识, 事实上,善于编程和善于解决数独难题并没有什么不同之处。

    要解决数独难题,必须为每一行,每列和每个3×3内部平方的9×9板填充数字1到9。您可以通过从起始号码应用扣除和逻辑来找到解决方案。例如,由于5出现在图1所示的数独拼图的左上角,它不能出现在顶行,最左列或左上3×3平方的别处。一次解决一行,一列或一个方形将为其余的拼图提供更多的数字线索。

    只是因为数独涉及数字并不意味着你必须擅长数学解决问题。编程也是如此。像解决数独的难题一样,编写程序涉及将问题分解为单独的详细步骤。同样,当调试程序(即查找和修复错误)时,您将耐心地观察程序正在执行的操作,并查找错误的原因。和所有的技能一样,程序越多,你就会变得越好

  7. 编程是一个创造性活动
    编程是一项创造性的任务,有点像利用乐高砖块建造一座城堡。你从一个基本的想法开始,你想要你的城堡看起来像什么,并清点你可用的块。然后你开始建设。一旦你完成了你的程序,你可以像你的城堡一样漂亮你的代码。
    编程与其他创意活动之间的区别在于,在编程时,您可以在计算机中拥有所需的所有原材料;您不需要购买任何额外的帆布,油漆,薄膜,纱线,乐高砖或电子元件。当您的程序写入时,可以轻松地在全球共享网络。虽然编程时你会犯错,但活动还是很有趣的。

  8. 问一个聪明的问题
    如果通过在线搜索找不到答案,请尝试在网络论坛中询问人们,例如Stack Overflow(http://stackoverflow.com/)但请记住,用聪明的方式来提出问题,更能促使他人帮助解决您的编程问题。请务必阅读这些网站关于正确发布问题的常见问题部分。
    当你在问一个问题的时候,你应该记住以下几点:

    • 解释你正在努力做什么,而不是你所做的。这让回答者知道你错在哪里
    • 指定发生错误的点。它是发生在程序的开始,还是在你做了一些动作之后?
    • 将整个错误消息和代码复制并粘贴到http://pastebin.com/http://gist.github.com/

      这些网站可以轻松地通过网络与人们共享大量的代码 ,没有丢失任何文本格式的风险。然后,您可以将发布的代码的链接放在您的电子邮件或论坛帖子中。

    • 解释您如何尝试解决您的问题。这告诉人们你已经按自己的想法做了一些工作

    • 列出您使用的Python版本。 (Python版本2 和Python版本3 之间有一些关键的区别。)此外,说明您正在运行的操作系统和版本。
    • 如果您在更改代码后出现错误,请说明您所做的更改。
    • 说出你是否能够在每次运行程序时重现错误,或者是否只在执行某些操作后才会重现错误。 解释这些行为是什么。始终遵循良好的在线礼仪。例如,不要在所有上限中发布您的问题,或为试图帮助您的人提出不合理的要求。
  9. 最后
    对于大多数人来说,他们的电脑只是一个器具而不是一个工具。但是,通过学习如何编程,您将可以访问现代世界中最强大的工具之一,您将可以享受乐趣。编程不是脑外科手术 - 业余爱好者完全可以尝试和犯错误。

    本书将从零编程知识开始,但您可能会有超出其范围的问题。请记住,询问有效问题并了解如何找到答案是你程序设计旅程中的宝贵工具。

让我们开始把

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注