cmd有没有像python一样如果上面脚本报错就执行下面脚本的代码(容错)?

(还在更新中…) 这篇博客花费了我的大量时间和精力,从创作到维护;若认可本篇博客,希望给一个点赞、收藏

并且,遇到了什么问题,请在评论区留言,我会及时回复的


这本书对Python的知识点的描述很详细,而且排版看的很舒服

  1. 几个例题: 假装自己从零开始学,将一些有代表性、有意思的例题抽取出来
  2. 部分复习题: 遇到有意思的复习题,我会拿出来,并且进行分析
  3. 上机实践: 全部上机实践题的解题思路
    • 选择题:1、3、7、8
  • 案例研究:使用Pillow库处理图像文件
  • 案例研究:使用嵌套循环实现图像处理算法
  • 第四章 常用内置数据类型
  • 案例研究:科学计算和数据分析
  • 选择题:4、5、7、11、12
  • 例题及上机实践:2~5
  • 案例研究:21点扑克牌游戏
  • 第七章 错误和异常处理
  • 案例研究:使用调试器调试Python程序
  • 第八章 函数和函数式编程
    • 一些知识点总结和几个例题
  • 第九章 面向对象的程序设计
  • 第十一章 算法与数据结构基础
  • 第十二章 图形用户界面
    • 案例研究:简易图形用户界面计算器
  • 图形绘制模块:turtle
  • 第十四章 数值日期和时间处理
  • 第十五章 字符串和文本处理
  • 第十六章 文件和数据交换
  • 第十八章 网络编程和通信
  • 第十九章 并行计算:进程、线程和协程

通过此案例,进一步了解Python的基本概念:模块、对象、方法和函数的使用


一:编程判断某一年是否为闰年

闰年:年份能被4整除但不能被100整除,或者可以被400整除。
口诀:四年一闰,百年不闰,四百必闰

二:利用嵌套循环打印九九乘法表

三:enumerate()函数和下标元素循环示例

Python语言中的for循环直接迭代对象集合中的元素,如果需要在循环中使用索引下标访问集合元素,则可以使用内置的enumerate()函数

enumerate()函数用于将一个可遍历的数据对象(例如列表、元组或字符串)组合为一个索引序列,并返回一个可迭代对象,故在for循环当中可直接迭代下标和元素

四:zip()函数和并行循环示例

如果需要并行遍历多个可迭代对象,则可以使用Python的内置函数zip()

zip()函数将多个可迭代对象中对应的元素打包成一个个元组,然后返回一个可迭代对象。如果元素的个数不一致,则返回列表的长度与最短的对象相同。

利用运算符*还可以实现将元组解压为列表

五:map()函数和循环示例

如果需要遍历可迭代对象,并使用指定函数处理对应的元素,则可以使用Python的内置函数map()

  • func作用于seq中的每一个元素,并将所有的调用结果作为可迭代对象返回。
  • 如果func为None,该函数的作用等同于zip()函数

字符串拼接(使用了匿名函数lambda):

通过图像处理算法案例,深入了解Python数据结构和基本算法流程


一:Python内置数据类型概述

Python中一切皆为对象,而每个对象属于某个数据类型

Python的数据类型包括:

    与其他计算机语言有精度限制不同,Python中的整数位数可以为任意长度(只受限于计算机内存)。
    整型对象是不可变对象。 与其他计算机语言中的double和float对应
    Python的浮点类型的精度和系统相关 当数值字符串中包含虚部j(或J)时即复数字面量

序列数据类型表示若干有序数据.

    在Python中没有独立的字符数据类型,字符即长度为1的字符串 表示任意数据类型的序列,例如:(“z”,“g”,“h”,6,6,6)
  1. bytes(字节序列)
    表示字节(8位)序列数据
    表示可以修改的任意类型数据的序列,比如:[‘z’,‘g’,‘h’,6,6,6] 表示可以修改的字节(8位)数组

集合数据类型表示若干数据的集合,数据项目没有顺序,且不重复

字典数据类型:dict

字典数据类型用于表示键值对的字典

  1. NoneType数据类型包含唯一值None,主要用于表示空值,如没有返回值的函数的结果
  2. NotImplementedType数据类型包含唯一值NotImplemented,在进行数值运算和比较运算时,如果对象不支持,则可能返回该值

通过Python科学计算和数据分析库的安装和基本使用,了解使用Python进行科学计算的基本方法


一:Python中内置的序列数据类型

  • 元组也称为定值表,用于存储固定不变的表
  • 列表也称为表,用于存储其值可变的表
  • 字符串是包括若干字符的序列数据,支持序列数据的基本操作
  • 字节序列数据是包括若干字节的序列。Python抓取网页时返回的页面通常为utf-8编码的字节序列。

字节序列和字符串可以直接相互转换(字节编码和解码):

二:序列的切片操作示例

三:序列的连接和重复操作

  • 通过连接操作符+可以连接两个序列,形成一个新的序列对象
  • 通过重复操作符*可以重复一个序列n次
  • 连接操作符和重复操作符也支持复合赋值运算,即:+=*=

四:序列的成员关系操作

    七:使用元组字面量,tuple创建元组实例对象的实例

    如果元组中只有一个项目,后面的逗号不能省略。

    Python解释器把(1)解释为整数1,将(1,)解释为元组

    八:使用列表字面量,list创建列表实例对象的实例

    补充:列表是可变对象,故用户可以改变列表对象中元素的值,也可以通过del删除某元素

    九:列表解析表达式示例

    使用列表解析表达式可以简单,高效地处理一个可迭代对象,并生成结果列表

    选择题:4、5、7、11、12

    通过猜单词游戏的设计和实现,帮助读者了解使用Python系列数据类型和控制流程


    一:运行时提示输入密码

    输入密码时,一般需要不明显,则可以使用模块getpass,以保证用户输入的密码在控制台中不回显

    input()#为了看到输出结果。因为执行完毕后,控制台会立马关闭

    注意:上面这个代码,如果使用IDLE执行,会因为安全问题而执行失败

    但是,在控制台中执行就没问题,看输出结果(可以看到,输入的密码不会显示出来):

    二:重定向标准输出到一个文件的示例

    这种重定向由控制台完成,而与Python本身无关。

    其目的是将显示屏从标准输出中分离,并将输出文件与标准输出关联,即程序的执行结果将写入输出文件,而不是发送到显示屏中显示

    通过21点扑克牌游戏的设计和实现,了解使用Python数据类型、控制流程和输入输出


    Python语言采用结构化的异常处理机制捕获和处理异常

    而我感觉,Python在这方面的知识点其实和Java的差不多

    一:程序的错误和异常处理

    指源代码中的拼写错误,这些错误导致Python编译器无法把Python源代码转换为字节码,故也称之为编译错误

    在解释执行过程中产生的错误

    • 程序中没有导入相关的模块,NameError

    程序可以执行(程序运行本身不报错),但执行结果不正确。
    对于逻辑错误,Python解释器无能为力,需要用户根据结果来调试判断

    大部分由程序错误而产生的错误和异常一般由Python虚拟机自动抛出。另外,在程序中如果判断某种错误情况,可以创建相应的异常类的对象,并通过raise语句抛出

    在程序中的某个方法抛出异常后,Python虚拟机通过调用堆栈查找相应的异常捕获程序。如果找到匹配的异常捕获程序(即调用堆栈中的某函数使用try…except语句捕获处理),则执行相应的处理程序(try…except语句中匹配的except语句块)

    如果堆栈中没有匹配的异常捕获程序,则Python虚拟机捕获处理异常,在控制台打印出异常的错误信息和调用堆栈,并中止程序的执行

    不管异常发生与否都保证执行的语句

    except语句可以写多个,但是要注意一点:系统是自上而下匹配发生的异常,所以用户需要将带有最具体的(即派生类程度最高的)异常类的except写在前面

    三:创建自定义异常,处理应用程序中出现的负数参数的异常

    自定义异常类一般继承于Exception或其子类。自定义异常类的名称一般以Error或Exception为后缀

    用户在编写程序时,在调试阶段往往需要判断代码执行过程中变量的值等信息:

    1. 用户可以使用print()函数打印输出结果
    2. 也可以通过断点跟踪调试查看变量

    __debug__也是布尔值,Python解释器有两种:调试模式和优化模式

    了解使用Python调试器调试程序的方法


    一些知识点总结和几个例题

    Python中函数的分类:

    1. Python语言安装程序同时会安装若干标准库,例如math、random等
    2. Python社区提供了许多其它高质量的库,在下载、安装这些库后,通过import语句可以导入库
    • 函数名为有效的标识符(命名规则为全小写字母,可以使用下划线增加可阅读性,例如my_func()
    • 函数可以使用return返回值
      如果函数体中包含return语句,则返回值
      否则不返回,即返回值为空(None),无返回值的函数相当于其它编程语言中的过程

    调用函数之前程序必须先执行def语句,创建函数对象

    • 内置函数对象会自动创建
    • import导入模块时会执行模块中的def语句,创建模块中定义的函数

    一:产生副作用的函数,纯函数

    上面代码中的print_star()是一个产生副作用的函数,其副作用是向标准输出写入若干星号

    • 副作用:例如读取键盘输入,产生输出,改变系统的状态等
    • 在一般情况下,产生副作用的函数相当于其它程序设计语言中的过程,可以省略return语句

    定义计算并返回第n阶调和数(1+1/2+1/3+…+1/n)的函数,输出前n个调和数

    了解Python函数的定义和使用


    由于本文的内容太多了,导致了两个很不好的结果,
    一是:在网页中打开本篇博客的加载时间太长了,明显的卡顿很影响阅读体验;
    二是:本人在对本篇文章进行更新或者修改内容时,卡的要死。
    将本文第八章后面的很多内容拆分到新的文章中,望大家理解



    • 《Python程序设计与算法基础教程(第二版)》江红 余青松,第九章课后习题答案

    • 《Python程序设计与算法基础教程(第二版)》江红 余青松,第十章课后习题答案

    • 《Python程序设计与算法基础教程(第二版)》江红 余青松,第十一章课后习题答案

    我对图形用户界面基本无兴趣,无特殊情况,基本不打算碰这方面内容

    案例研究:简易图形用户界面计算器

    • Python实现简易图形用户界面计算器

    与上一章相同,我对于图形绘制的兴趣也基本没有,尝试做了2-7题,就完全没兴趣做下去了

    2. 参考例13.2利用Canvas组件创建绘制矩形的程序,尝试改变矩形边框颜色以及填充颜色

    • 调用组件pack()方法,调整其显示位置和大小
    • (x0,y0)是左上角的坐标
    • (x1,y1)是右下角的坐标

    3. 参考例13.3利用Canvas组件创建绘制椭圆的程序,尝试修改椭圆边框样式、边框颜色以及填充颜色

    • (x0,y0)是左上角的坐标
    • (x1,y1)是右下角的坐标

    4. 参考例13.4利用Canvas组件创建绘制圆弧的程序,尝试修改圆弧样式、边框颜色以及填充颜色

    • (x0,y0)是左上角的坐标
    • (x1,y1)是右下角的坐标
    • 选项start(开始角度,默认为0)和extend(圆弧角度,从start开始逆时针旋转,默认为90度)决定圆弧的角度范围
    • 选项start用于设置圆弧的样式

    5. 参考例13.5利用Canvas组件创建绘制线条的程序,尝试修改线条样式和颜色

    • (x0,y0),(x1,y1),…,(xn,yn)是线条上各个点的坐标

    6. 参考例13.6利用Canvas组件创建绘制多边形的程序,尝试修改多边形的形状、线条样式和填充颜色

    • (x0,y0),(x1,y1),…,(xn,yn)是多边形上各个顶点的坐标

    7. 参考例13.7利用Canvas组件创建绘制字符串和图形的程序,绘制y = cos(x) 的图形

    • (x,y)是字符串放置的中心位置

    图形绘制模块:turtle


    后面章节内容:未完待续…







}

我要回帖

更多关于 python安装后cmd运行不了 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信