python使用符号 标示注释-第一章:Python语言程序设计

关于课程:

课程作者为北京理工大学教授嵩天

学习账号是微信账号登陆:昵称为coke

1-1节:程序设计的基本方法

math?formula=%5Ccolor%7Bblue%7D%7BContent%EF%BC%9A%7D

计算机与程序设计

编译和解释

程序的基本编写方法

计算机编程

1-1单元小结

计算机与程序设计

计算机的概念:计算机是根据指令操作数据的设备,具有功能性和可编程性。功能性:是指对计算机的操作,表现为数据的计算,输入输出的处理和结果存储等。可编程性:根据一系列指令自动地、可预测性、准确的完成操作者的意图。

计算机的发展:参照摩尔定律发展,按照指数形式发展。计算机硬件所依赖的集成电路规模参照摩尔定律发展。计算机运行速度因此也接近几何级数快速增长。计算机所能高效支撑的各类运算功能不断丰富发展。由此可见计算机的功能和性能是交替和交织发展的。

摩尔定律:Moore's Law是计算机发展历史上最重要的预测法则,由Intel公司的创始人之一戈登摩尔1965年提出:单位面积集成电路上可容纳晶体管的数量约每两年翻一番。CPU/GPU、内存、硬盘、电子产品价格等都遵循摩尔定律。

程序设计:程序设计是计算机可编程的体现,亦成为编程,深度应用计算机的主要手段。程序设计已经成为当前社会需求量最大的职业技能之一。很多岗位即将被计算机程序接管,程序设计将是生存技能。

程序设计语言:是一种用于交互(交流)的人造语言,又称为编程语言,程序设计的具体实现方式,程序语言比自然语言更简单、严谨、精确。主要用于人类与计算机之间的交互。同样的代码计算机必须只有一种理解,这是程序设计语言必须要达到的效果。此外编程语言要告诉计算机其中数据的特性及特点,使得计算机的操作更加精确。

编译和解释

在了解编译和解释之前,我们需要率先查看程序是如何执行在计算机之上的。

编程语言的执行方式:

1、源代码,采用某编程语言编写,人类可读,如:result = 2 + 3,将运算结果赋值给变量result

2、目标代码,计算机可直接执行,人类不可读(专家除外),例如:11101010 01010010

下面这段执行的过程叫做编译,执行编译过程的程序称为编译器:编译可以理解为一次性翻译,之后不需要源代码(类似英文翻译)

206c3c408f3d

编译.JPG

下面这段执行的过程叫做解释,执行解释过程的程序称为解释器:解释可以理解为每次程序运行时随翻译随执行(类似实时的同声传译)

206c3c408f3d

解释.JPG

静态语言和脚本语言:静态语言是指使用编译执行的编程语言,C/C++语言、Java语言(一次性生成目标代码,优化更充分,程序运行速度更快)。脚本语言是指使用解释执行的编程语言,Python语言、PHP语言、JavaScript语言(执行程序时需要源代码,维护更加灵活,跨多个操作系统平台)。

程序的基本编写方法

IPO编程规范

I:input输入,程序的输入;P:press处理,程序的主要逻辑;O:output输出,程序的输出;

首先,需要理解IPO,输入是什么?输出是什么?如何从输入达到输出。

程序的输入:文件输入、网络输入、控制台输入、交互界面输入、内部参数输入等。输入是一个程序的开始

程序的输出:经过处理后,程序将结果通过控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等。输出是程序展示预算结果的方式

程序的处理:处理是程序对输入数据进行计算产生输出结果的过程;处理方法统称为算法,它是程序最重要的部分,算法是一个程序的灵魂。

编程问题的解决步骤(计算为主,IPO编写方法为辅):

206c3c408f3d

IPO与解决示例问题的关联.JPG

关于算法的需求分析(计算为主,IPO编写方法为辅):

206c3c408f3d

关于算法的需求分析.JPG

完成上述步骤之后,才真正的设计到编写程序:

206c3c408f3d

编写程序的后半部分步骤.JPG

最终呢,嵩天老师将编程的步骤凝练缩减为简单的三步骤:

206c3c408f3d

程序编写的3个精简步骤.JPG

计算机编程

编程能够训练思维,编程体现了一种抽象交互关系,自动化执行的思维模式,编程能够

math?formula=%5Ccolor%7Bred%7D%7B%E5%A2%9E%E8%BF%9B%E8%AE%A4%E8%AF%86%7D,编程不是单纯的求解问题,还要思考用户体验,执行效率,编程能够帮助程序员加深用户行为及社会和文化认识,编程能够

math?formula=%5Ccolor%7Bred%7D%7B%E5%B8%A6%E6%9D%A5%E4%B9%90%E8%B6%A3%7D,编程能够提供展示自身思想和能力的舞台,让世界增加新的颜色、让自己变得更酷、提升心里满足。在信息空间里思考创新、将创新变位现实。编程能够

math?formula=%5Ccolor%7Bred%7D%7B%E6%8F%90%E9%AB%98%E6%95%88%E7%8E%87%7D,能够更好的利用计算机解决问题,显著的提高工作、生活和学习效率,也是为理想的实现提供一种借助计算机的高效手段。编程带来

math?formula=%5Ccolor%7Bred%7D%7B%E5%B7%A5%E4%BD%9C%E6%9C%BA%E4%BC%9A%7D程序员是信息时代最重要的岗位之一,国内外对程序员岗位的缺口在百万以上规模,计算机已经渗透于各个行业,就业前景非常广阔。

计算机思维:区别逻辑思维(数学为代表)和实证思维(物理为代表)之外的第三种思维模式。

学习计算机编程的误区:

206c3c408f3d

编程的误区.JPG

1-1单元小结

单元小结,通过这部分内容让大家建立计算机、程序设计以及程序设计价值这样一些基础的认识,为我们进一步学习做好铺垫:

206c3c408f3d

总结.JPG

1-2节:Python开发环境配置(略)

1-3节:示例1:温度转换

math?formula=%5Ccolor%7Bblue%7D%7BContent%EF%BC%9A%7D

温度的两种体系

温度转换的需求分析

问题分析

设计算法

输入输出

举一反三

温度的两种体系

1、摄氏度,中国等大多数国家使用,以1标准大气压下水的结冰点为0度,沸点为100度,将温度进行等分刻画。

2、华氏度,美、英国等国家使用,以1标准大气压下水的结冰点为32度,沸点为212度,将温度进行等分刻画。

温度转换的需求分析

1、将摄氏度转换为华氏度

2、将华氏度转换为摄氏度

问题分析

针对问题的计算部分进行分析并理解,最终确定:

1、理解一:直接将温度进行转换

2、理解二:将温度信息发布的声音或图像形式进行理解和转换(例如将电视或者其他音频媒介获取到温度的值,利用程序处理该场景的温度转换)

3、理解三:监控温度信息发布渠道,实时获取并转换温度值(该理解需要与网络的通信、爬虫及很多的信息处理相结合)

这里我们采用理解1:直接将温度值进行转换;

温度数值需要标明温度体系,及摄氏度或华氏度

转换后也需要给出另外的温度体系标明

在分析问题的基础上,这里我们进行IPO的

math?formula=%5Ccolor%7Bred%7D%7B%E8%BE%B9%E7%95%8C%E5%88%92%E5%88%86%7D,按照编程规范重构该问题。

输入:携带摄氏或华氏的温度值

处理:根据温度标志选择适当的温度转换算法

输出:携带摄氏或华氏的温度值

这样我们就完成了IPO的边界划分,针对输入输出的格式这里需要设计并声明一下,标示放在温度最后,F标示华氏度,C标示摄氏度,例如:82F表示华氏82度,28C表示摄氏28度

设计算法

根据华氏和摄氏的定义,利用转换公式如下:

C=(F-32)/1.8

F=C*1.8+32+32

math?formula=%5Ccolor%7Bred%7D%7B%20%E4%BB%8E%E9%97%AE%E9%A2%98%E7%9A%84%E8%BE%93%E5%85%A5%E8%BE%93%E5%87%BA%E2%80%94%E2%80%94%E5%88%B0%E4%B8%AD%E9%97%B4%E7%9A%84%E5%A4%84%E7%90%86%E8%BF%87%E7%A8%8B%EF%BC%8C%E6%88%91%E4%BB%AC%E5%B7%B2%E7%BB%8F%E5%88%86%E6%9E%90%E6%B8%85%E6%A5%9A%E4%BA%86%EF%BC%8C%E4%B8%8B%E9%9D%A2%E8%AE%A9%E6%88%91%E4%BB%AC%E5%BC%80%E5%A7%8B%E7%BC%96%E7%A8%8B%E5%90%A7%EF%BC%81%7D

#TempConvert.py

TempStr = input("请输入带有符号的温度值")

if TempStr[-1] in ['f','F']:

C = (eval(TempStr[0:-1]) - 32)/1.8

print("转换后的温度是{:.2f}C".format(C))

elif TempStr[-1] in ['c','C']:

F = 1.8*eval(TempStr[0:-1]) + 32

print("转换后的温度是{:.2f}F".format(F))

else:

print("输入格式错误")

举一反三:

输入输出的改变

温度数值与温度标示之间的关系设计可以改变:

1、标示改变放在数值之前:C82,F28

2、标示字符改变为多个字符:82Ce、28F

计算问题的扩展

温度转换问题是各类转换问题的代表性问题:

1、货币转换、长度转换、重量转换、面积转换...

2、问题不同,但是程序代码是相似的

1-4Python元素语法分析

输入输出

数据类型

语句与函数

代码分析

1-4单元小结

输入输出

input()从控制台获得用户的输入

1、input()函数的基本使用格式

<变量> = input(<提示信息字符串>)

2、输入信息的格式

用户输入的信息以字符串类型保存在<变量>中,如:TempStr = input("请输入")#TempStr保存用户输入的信息

print()以字符形式向控制台输出结果的函数

1、print()函数的基本使用格式

print(<拟输出字符串或字符串变量>)

2、字符串类型的一对引号仅在程序内部使用,输出无引号

如:print("输入格式错误")#向控制台输出 输入格式错误

3、print()格式化的操作方法

如:print("转换后的温度是{:.2f}C".format(C))#{:.2f}大括号标示槽,后续变量填充到槽中

206c3c408f3d

输出函数格式化.JPG

除输入输出函数外,这里还有一个eval()评估函数

1、这个函数很有趣,功能为:去掉函数最外侧引号并执行余下语句的函数

2、

206c3c408f3d

评估函数.JPG

根据该10行代码对Python语法元素进行理解,清楚理解这10行代码将能够快速入门Python语言,接下来让我们参考框架、逐行分析、逐词理解:

1、下列代码中的颜色,是编程的色彩辅助体系,不是语法要求;

2、缩进是一行代码开始前的空白区域,表达程序的格式框架;

3、 “#注释”用于提高代码可读性的辅助文字,不被执行;

4、命名与保留字,TempStr、C、F,这些字符成为变量,程序中用于保存和表示数据的占位符号,可以使用等号(=)向变量赋值或修改值,=被成为赋值符号 。比如TempStr=“82F”#向变量TempStr赋值“82F”。

关于命名需要注意以下问题:

为变量关联标识符的过程叫做命名,命名规则:大小写字母、数字、下划线和汉字等字符及组合,如:TempStr,Python_Great,这是门Python好课

注意事项:大小写敏感、首字符不能是数字、不与保留字相同,Python与python是不同变量,123python是不合法的变量命名。

保留字,被编程语言内部定义并保留使用的标识符,Python一共33个保留字,比如:if,else,elif,in如果是大写的IF可以作为变量使用,但是if不可以当做变量使用,我们学习一门语言,至少需要了解涉及哪些单词,下列的保留字就是python语言中的33个单词:

206c3c408f3d

Python的33个保留字.JPG

数据类型

关于数据类型,比如10,111,101:

首先如果不去定义该数字,可以标示为二进制也可以表示为十进制,甚至是一段字符,计算机语言是一门精确的表达语言,因此我们需要用不同的方式指定想要表达的数据类型

如果想要表达为字符串类型:“10111101”或者"10111101’

如果想要表达为整数类型:10111101

如果想要表达为列表类型:[10,111,101]

math?formula=%5Ccolor%7Bred%7D%7B%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%B1%BB%E5%9E%8B%7D

字符串的序号有两种表示方式,正向递增序号和反向递减序号(用于字符串的索引和切片操作)

索引:返回字符串中单个字符 <字符串或者字符串变量的后面>[M],其中M书写为数值,不同数值代表不同含义

例如:

math?formula=%5Ccolor%7Bgreen%7D%7B''%E8%AF%B7%E8%BE%93%E5%85%A5%E5%B8%A6%E6%9C%89%E7%AC%A6%E5%8F%B7%E7%9A%84%E6%B8%A9%E5%BA%A6%E5%80%BC%EF%BC%9A%5B0%5D'%E2%80%99%7D或者 TempStr[-1],其中[0]代表获取数值,[-1]代表获取温度的标示符号

切片:返回字符串中一段字符子串 <字符串或者字符串变量的后面>[M:N]

例如:

math?formula=%5Ccolor%7Bgreen%7D%7B''%E8%AF%B7%E8%BE%93%E5%85%A5%E5%B8%A6%E6%9C%89%E7%AC%A6%E5%8F%B7%E7%9A%84%E6%B8%A9%E5%BA%A6%E5%80%BC%EF%BC%9A%5B1%3A3%5D'%E2%80%99%7D或者TempStr[0:-1],[1:3]表示取出字符串中的第1、2个字符,但是不到第3个字符。[0:-1]表示从0开始但是不到字符串的最后一位,也就是剔除了字符串的最后一位,代码中利用TempStr[0:-1]来截取用户输入的82F中的数值:82

206c3c408f3d

字符串的表示方法.JPG

math?formula=%5Ccolor%7Bred%7D%7B%E6%95%B4%E6%95%B0%E7%B1%BB%E5%9E%8B%7D

代码中的数字例如32、1.8,32为整数类型(整数包含正整数和负整数,如32、-32),1.8则是浮点数类型(浮点数是数学中的实数,带有小数部分,如1.8、-1.8、 -1.0):

206c3c408f3d

Python的数据类型.JPG

math?formula=%5Ccolor%7Bred%7D%7B%E5%88%97%E8%A1%A8%E7%B1%BB%E5%9E%8B%7D

206c3c408f3d

列表类型.JPG

语句与函数

赋值语句

分支语句

函数

赋值语句

首先我们先观察这段代码,其中有三行代码都有赋值符号的产生,由赋值符号构成的代码,我们称为赋值语句,用来给变量赋予新的数据值:

比如这行代码:C = (eval(TempStr[0:-1]) - 32)/1.8#将右侧的运算结果赋值给变量C

206c3c408f3d

语句与函数

分支语句

由判断条件决定程序运行方向的语句称之为分支语句

206c3c408f3d

分支语句.JPG

代码中if TempStr[-1] in ['f','F']:#这行代码结尾处以冒号结尾,代表如果条件判断为True则执行冒号后的语句

每个保留字所在行最后存在一个冒号(:),冒号属于语法的一部分,不能省略

冒号及后续缩进用来表示后续语句与条件的所属关系

何为函数

根据输入参数产生不同输出的功能过程

Python使用的函数类似数学的函数,y=f(x)

print("输入格式错误")#打印函数输出”输入格式错误“

Python函数采用<函数名>(<参数>)方式使用

(eval(TempStr[0:-1])#这里TempStr[0:-1]是函数的参数

代码分析

#这是单行注释

···

这是多行注释

这是多行注释

···

#TempConvert.py,这是一行注释

#使用input函数从控制台获取一个信息,以字符串形式赋值给变量TempStr

TempStr = input("请输入带有符号的温度值")

#保留字表达分支语句,用保留字in判断最后一个字符是否在列表中

if TempStr[-1] in ['f','F']:

#将TempStr字符串去除最后一位符号并使用eval评估运算后转换为数字类型,从而参与公式运算并将结果赋值给变量C

C = (eval(TempStr[0:-1]) - 32)/1.8

#将变量C的结果格式化为保留小数点后两位后输出

print("转换后的温度是{:.2f}C".format(C))

#关键字elif是分支语句,用保留字in判断用户输入的信息是否在列表内

elif TempStr[-1] in ['c','C']:

#将TempStr字符串去除最后一位符号并使用eval评估运算后转换为数字类型,从而参与公式运算并将结果赋值给变量F

F = 1.8*eval(TempStr[0:-1]) + 32

print("转换后的温度是{:.2f}F".format(F))

#根据以上两个分支语句判断,如不符合以上分支的初始华条件,说明无法正常获取温度范围,则给予错误提示

else:

print("输入格式错误")

1-4单元小结

206c3c408f3d

1-4单元小结.JPG

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值