今天分享一本好书《Python编程快速上手 让繁琐工作自动化》,也是我自学python看过的第二本书。...▲ stackoverflow中关于学编程的搜索结果 而对纯编程新手,亚马逊评分4.7,中文版热销超25万册的图书《Python编程快速上手 让繁琐工作自动化(第2版)》作者,阿尔•斯维加特给出了两个非常有效的自学建议...这本《Python编程快速上手 让繁琐工作自动化 第2版》是为了帮助读者快速上手学会使用Python,将日常工作中那些需要计算机操作的繁琐工作自动化,比如: 移动并重命名几千个文件,将它们分类,并放入文件夹...编程是为了解决问题 的确,我们学习某个技能就是为了解决相应的问题,Python则是解决我们工作中那些繁琐任务的一个很好方式。...《Python编程快速上手 让繁琐工作自动化 第2版》中给出的答案就非常有效,并且适用于编程的所有阶段,在任何时候使用这些方法去获取答案都是很好的。
然后编写一个程序,让用户输入一个整数,并不断对这个数调用 collatz(),直到函数返回值1(令人惊奇的是,这个序列对于任何整数都有效,利用这个序列,你迟早会得到 1!既使数学家也不能确定为什么。
1、 5//2=2 5/2=2.5 2、全局变量 global foo 3、list.index(xx) 没有则引发异常 append,insert(...
python3 #运行 py mcb.pyw save spam ,剪贴板内容就关键字spam保存 #py mcb.pyw spam 加载spam 对应内容到剪贴板 #py mcb.pyw list 关键字列表到剪贴板
#-*- coding:utf-8 -*- # 要求输出如下: # apples Alice dogs # dranges Bob cats...
# -*- coding:utf-8 -*- #strip正则表达式 #if 只字符串,不带参数,去首尾空白 #else 去除参数 text=input("I...
Python 提供了几个这样的内置函数,但是您也可以编写自己的函数。函数就像一个程序中的一个小程序。 为了更好地理解函数是如何工作的,让我们创建一个函数。...随着你获得更多的编程经验,你会经常发现自己删除重复代码,这意味着去掉重复的或复制粘贴的代码。重复数据删除使您的程序更短、更易读、更易于更新。...None值 在 Python 中,有一个值叫做None,代表没有值。None值是NoneType数据类型的唯一值。(其他编程语言可能会将这个值称为null、nil或undefined。)...Python 将退回到使用全局eggs变量 ➋。 起到“黑匣子”的作用 通常,关于一个函数,你需要知道的只是它的输入(参数)和输出值;您不必总是为函数代码的实际工作方式而烦恼。...您可以将之前被零除的代码放在一个try子句中,并让一个except子句包含代码来处理这个错误发生时会发生什么。
复杂的编程概念——如面向对象编程、列表理解和生成器——没有被涵盖,因为它们增加了复杂性。经验丰富的程序员可能会指出本书中的代码可以改变以提高效率的方法,但本书主要关注的是让程序以最少的努力工作。...什么是编程? 电视程序和电影经常显示程序员在发光的屏幕上疯狂地输入 1 和 0 的神秘数据流,但现代编程并没有那么神秘。编程就是输入指令让计算机执行的行为。...关于这本书 这本书的第一部分涵盖了基本的 Python 编程概念,第二部分涵盖了可以让计算机自动完成的各种任务。第二部分的每一章都有专题项目供你研究。以下是你在每章中会发现的内容的简要概述。...第六章:操纵字符串 涵盖了处理文本数据(在 Python 中称为字符串)。 第二部分:自动化任务 第七章:正则表达式的模式匹配 讲述了 Python 如何操作字符串和用正则表达式搜索文本模式。...第十九章:操作图像 解释了如何以编程方式操作图像,如 JPEG 或 PNG 文件。 第二十章:用 GUI 自动化控制键盘和鼠标 解释了如何通过编程控制鼠标和键盘来自动化点击和按键。
套用程序员之间的一个老笑话,写代码占编程的 90%。调试代码占其余的 90%。 你的电脑只会做你让它做的事情;它不会读取你的想法,做你想让它做的事情。...使用try和except语句,您可以更优雅地处理错误,而不是让整个程序崩溃。 获取字符串形式的回溯 当 Python 遇到错误时,它会产生一个称为回溯的错误信息宝库。...通过在程序执行的早期快速失败,您可以为自己节省很多未来的调试工作。 日志 如果您曾经在程序运行时在代码中放入一个print()语句来输出某个变量的值,那么您已经使用了一种形式的日志来调试您的代码。...(levelname) s - %(message)s') 您不需要太担心这是如何工作的,但基本上,当 Python 记录一个事件时,它会创建一个保存该事件信息的LogRecord对象。...使用 Python assert语句的断言是实现“健全检查”的好方法,当必要条件不成立时,它会给你一个早期警告。断言只针对程序不应该试图恢复并且应该快速失败的错误。否则,您应该引发异常。
否则,Python 会认为你只是在普通括号内输入了一个值。逗号让 Python 知道这是一个元组值。...(与其他一些编程语言不同,在 Python 中,在列表或元组的最后一项后面有一个尾随逗号是没有问题的。)...然而,这种解释是对 Python 实际工作的简化。从技术上来说,变量存储的是对存储值的计算机内存位置的引用。...整数是不变的值;更改spam变量实际上是让它引用内存中一个完全不同的值。 但是列表不是这样工作的,因为列表值可以改变;也就是说,列表是可变的。下面是一些代码,可以使这种区别更容易理解。...Python 的自动垃圾收集器删除任何变量没有引用的值来释放内存。您不需要担心垃圾收集器是如何工作的,这是一件好事:在其他编程语言中,手动内存管理是常见的错误来源。
在提示符下输入2 + 2 ,让 Python 做一些简单的数学运算。...Mu窗口现在应该如下所示: >>> 2 + 2 4 >>> 在 Python 中,2 + 2被称为表达式,这是该语言中最基本的一种编程指令。...Python 会一直计算表达式的各个部分,直到它变成单个值,如下所示: 这些将操作符和值放在一起形成表达式的规则是 Python 作为编程语言的基础部分,就像帮助我们交流的语法规则一样。...剖析你的程序 在文件编辑器中打开新程序后,让我们通过查看每行代码的作用来快速浏览一下它使用的 Python 指令。 注释 下面这一行叫做注释。...这被称为注释代码,当你试图找出一个程序不工作的原因时,这很有用。当您准备好将线放回原位时,可以移除#。 Python 也会忽略注释后的空行。您可以在程序中添加任意数量的空行。
\Python编程快速上手++让繁琐工作自动化\(读写文件)疯狂填词2.py') 'D:\\Desktop\\Python编程快速上手++让繁琐工作自动化\\(读写文件)疯狂填词2.py' >>> os.path.abspath...(r'\Administrator\Desktop\Python编程快速上手++让繁琐工作自动化\(读写文件)疯狂填词2.py') 'D:\\Administrator\\Desktop\\Python...编程快速上手++让繁琐工作自动化\\(读写文件)疯狂填词2.py' # 如果没有指明最顶部根目录,则该函数返回的目录的顶部都是当前目录的顶部,即"D:\\" >>> os.path.abspath(r'C...:\Users\Administrator\Desktop\Python编程快速上手++让繁琐工作自动化\(读写文件)疯狂填词2.py') 'C:\\Users\\Administrator\\Desktop...\\Python编程快速上手++让繁琐工作自动化\\(读写文件)疯狂填词2.py' >>> import os >>> os.path.relpath('C:\\Windows', 'C:\\') 'Windows
但是如果你需要编辑大量的图片,手工编辑会是一项冗长而又无聊的工作。 输入 Python。Pillow 是一个用于与图像文件交互的第三方 Python 模块。...一旦在当前工作目录中有了图像文件zophie.png,就可以将 Zophie 的图像加载到 Python 中了,就像这样: >>> from PIL import Image >>> catIm = Image.open...svelteIm变量包含一个Image对象,它有原来的宽度,但是高度增加了 300 像素 ➌,让 Zophie 看起来更苗条。...如果你想让你的程序在图像上绘制形状,使用ImageDraw方法来绘制点、线、矩形、椭圆和多边形。该模块还提供了以您选择的字样和字体大小绘制文本的方法。...在前面的章节中,您编写了 Python 程序来处理纯文本文件、电子表格、PDF 和其他格式。使用pillow模块,您还可以将编程能力扩展到处理图像! 练习题 什么是 RGBA 值?
用requests模块从网上下载文件 requests模块让你轻松地从网上下载文件,而不必担心网络错误、连接问题和数据压缩等复杂问题。Python 没有提供requests模块,所以您必须先安装它。...如果你已经有一段时间没有看 HTML 了,这里有一个基础知识的快速概述。...用selenium模块控制浏览器 selenium模块让 Python 通过有计划地点击链接和填写登录信息来直接控制浏览器,就好像有一个人类用户在与页面交互一样。...能够以编程方式下载网页会将您的程序扩展到互联网。requests模块使下载变得简单,有了 HTML 概念和选择器的一些基本知识,您就可以利用BeautifulSoup模块来解析您下载的页面。...但是要完全自动化任何基于网络的任务,你需要通过selenium模块直接控制你的网络浏览器。selenium模块将允许您登录网站并自动填写表格。
与 Python 的内置input()不同,PyInputPlus 函数有几个额外的输入验证特性,如下一节所示。...invalid. catastrophe This response is invalid. category >>> response 'category' PyInputPlus 模块的函数可以让您不必自己编写繁琐的输入验证代码...inputChoice()函数允许您从几个预先选择的选项中选择一个,而inputMenu()还添加了数字或字母以便快速选择。...您将不再需要编写自己繁琐的while循环来检查有效输入并重新提示用户。...为这些选项中的每一个提供价格,并在用户输入他们的选择后,让您的程序显示总成本。 自己编写乘法小测验 要了解 PyInputPlus 为您做了多少工作,请尝试自己重新创建乘法测验项目,而不要导入它。
实现自动化。...通过给你的计算机编程来完成这些任务,你可以把它变成一个从不出错的快速工作的档案管理员。 当您开始处理文件时,您可能会发现能够快速查看扩展名(. txt,。pdf,。jpg等等)的一个文件。...或者,您可以向extractall()传递一个文件夹名,让它将文件提取到当前工作目录之外的文件夹中。如果传递给extractall()方法的文件夹不存在,它将被创建。...这将使得将函数复制并粘贴到其他需要该功能的 Python 程序中变得容易。程序结束时,将调用该函数来执行备份。让你的程序看起来像这样: #!...下一章关注一些 Python 模块,它们将帮助你分析和调试你的程序,这样你就可以快速地让它们正常工作。 练习题 shutil.copy()和shutil.copytree()有什么区别?
获取证书文件最简单的方法是在developers.google.com/sheets/api/quickstart/python进入谷歌表格Python 快速入门页面,点击蓝色的启用谷歌表格API 按钮...点击该按钮将弹出一个窗口,带有下载客户端配置链接,让您下载一个credentials.json文件。...将该文件重命名为credentials-sheets.json,并将其放在与 Python 脚本相同的文件夹中。...图 14-2:允许快速入门访问你的谷歌账户 关于 Quickstart 的消息来自于您从谷歌表格Python Quickstart 页面下载了证书文件。...但是在大多数情况下,这个速度限制不会影响使用 EZSheets 的 Python 脚本。谷歌表格也限制了你修改的频率。
但是编程的真正优势不仅仅是像周末跑腿一样一个接一个地运行指令。根据表达式的求值方式,程序可以决定跳过指令,重复指令,或者从几条指令中选择一条来运行。...这里,我又添加了两个elif语句,让姓名检查器根据age用不同的答案问候一个人。图 2-5 显示了此操作的流程图。...这里,input()调用让用户输入正确的字符串,让程序继续运行。在其他程序中,条件可能永远不会真正改变,这可能是一个问题。让我们看看如何打破while循环。...随着您获得更多的编程经验,您将会更加了解 Python 的模块和函数所使用的标准名称,并减少遇到这些问题的频率。...一个小程序:石头、剪刀、布 让我们使用目前为止所学的编程概念来创建一个简单的石头、布、剪刀游戏。
然后,您将完成两个不同的编程项目:一个存储多个文本字符串的简单剪贴板和一个自动完成格式化文本片段的枯燥工作的程序。...然而,这需要大量繁琐的打字工作。一种更简单的方法是使用字符串插值,其中字符串中的%s操作符作为一个标记,将被字符串后面的值替换。字符串插值的一个好处是不需要调用str()来将值转换成字符串。...这些基于文本的程序可能没有华丽的窗口或图形,但它们可以快速完成大量有用的工作。 另一种处理大量文本的方法是直接从硬盘上读写文件。你将在第 9 章中学习如何用 Python 做这件事。...这几乎涵盖了 Python 编程的所有基本概念!在本书的其余部分,您将继续学习新概念,但是您现在已经知道了足够多的知识,可以开始编写一些有用的程序来自动化任务。...僵尸骰子机器人可以很简单,也可以非常复杂,非常适合课堂练习或个人编程挑战。 僵尸骰子是一个快速,有趣的史蒂夫杰克逊游戏骰子游戏。玩家是僵尸,试图在不被击中三次的情况下吃掉尽可能多的人脑。
领取专属 10元无门槛券
手把手带您无忧上云