【0-课程导学 / 1-Python基本语法元素】嵩天《Python语言程序设计》

学习资源:

Python语言程序设计_北京理工大学_中国大学MOOC(慕课)

Python123 - 编程更简单


目录

【第0周】课程导学

(一)快速入门(2)

​(二)基础语法(5)

(三)编程思维(2)

【第1周】Python基本语法元素

一、程序设计基本方法

(一)计算机与程序设计

(二)编译和解释(计算机执行源程序的两种方式、编程语言的执行方式)

(三)程序的基本编写方法:IPO

(四)计算机编程

二、Python开发环境配置

​(一)Python语言概述

(二)Python基本开发环境IDLE

(三)Python程序编写与运行

三、实例1:温度转换

(一)问题分析

(二)实例编写

(三)举一反三

四、Python程序语法元素分析

(一)程序的格式框架

(二)命名与保留字

(三) 数据类型

(四) 语句与函数

(五) Python程序的输入输出

(六) “温度转换”代码分析


【第0周】课程导学

三部分(共9章):

  • 快速入门(2)
  • 基础语法(5)
  • 编程思维(2)

(一)快速入门(2)

第1周 Python基本语法元素

第2周 Python基本图形绘制

(二)基础语法(5)

第3周 基本数据类型

第4周 程序的控制结构

第5周 函数和代码复用

第6周 组合数据类型

第7周 文件和数据格式化

(三)编程思维(2)

第8周 程序设计方法学

第9周 Python计算生态总览


【第1周】Python基本语法元素

 


一、程序设计基本方法

(一)计算机与程序设计

1、计算机是根据指令操作数据的设备

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

2、计算机的发展

(1)计算机的发展参照摩尔定律,表现为指数方式

  • 计算机硬件所依赖的集成电路规模参照摩尔定律发展
  • 计算机运行速度因此也接近几何级数快速增长
  • 计算机高效支撑的各类运算功能不断丰富发展

(2)摩尔定律:计算机发展历史上最重要的预测法则

  • 单位面积集成电路上可容纳晶体管的数量约每两年翻一番
  • CPU/GPU、内存、硬盘、电子产品价格等都遵循摩尔定律

在计算机演进过程中,计算机的性能和功能是交替交织发展的

3、程序设计:计算机可编程性的体现

  • 程序设计,亦称编程,深度应用计算机的主要手段

4、程序设计语言:一种用于交互(交流)的人造语言

  • 程序设计语言,亦称编程语言,程序设计的具体实现方式,主要用于人类和计算机之间的交互
  • 编程语言相比自然语言更简单、更严谨、更精确
  • 编程语言种类很多,但生命力强劲的却不多(C语言是第一个被广泛使用的编程语言,Python是最流行最好用的编程语言)

(二)编译和解释(计算机执行源程序的两种方式、编程语言的执行方式)

1、源代码 VS 目标代码

  • 源代码:采用某种编程语言编写的计算机程序,人类可读。例如:
    result=2+3
  • 目标代码:计算机可直接执行,人类不可读,例如:11010010 00111011

2、编译:将源代码一次性转换成目标代码的过程,执行编译过程的程序叫做编译器(compiler)

  • 一次性翻译,之后不再需要源代码(类似英文翻译)
  • 使用编译执行的编程语言叫静态语言,如C/C++语言、Java语言

3、解释:将源代码逐条转换成目标代码同时逐条运行的过程,执行解释过程的程序叫做解释器(interpreter)

  • 每次程序运行时随翻译随执行(类似实时的同声传译)
  • 使用解释执行的编程语言叫脚本语言,如Python语言、JavaScript语言、PHP语言

4、静态语言 VS 脚本语言

根据执行方式不同,编程语言分为两类:静态语言和脚本语言。执行方式不同,优势各有不同

  • 静态语言:编译器一次性生成目标代码,优化更充分,程序运行速度更快
  • 脚本语言:执行程序时需要源代码,维护更灵活,可以跨多个操作系统平台

(三)程序的基本编写方法:IPO

  • I:Input   输入,程序的输入
  • P:Process   处理,程序的主要逻辑
  • O:Output   输出,程序的输出

1、输入

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

2、处理

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

3、输出

  • 程序的输出:控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等
  • 输出是程序展示运算结果的方式

4、问题的计算部分(一般都有输入、处理和输出过程)

计算机在一个待解决问题中,只能辅助完成计算部分

5、编程解决问题的步骤

(1)6个完整步骤

  • 分析问题:分析问题的计算部分(想清楚)
  • 划分边界:划分问题的功能边界(规划IPO)
  • 设计算法:设计问题的求解算法(关注算法)
  • 编写程序:编写问题的计算程序(编程序)
  • 调试测试:调试程序使正确运行(运行调试)
  • 升级维护:适应问题的升级维护(更新完善)

(2)3个精简步骤

  • 确定IPO:明确计算部分及功能边界
  • 编写程序:将计算求解的设计变成现实
  • 调试程序:确保程序按照正确逻辑能够正确运行

(四)计算机编程

编程体现了一种抽象交互关系、自动化执行的思维模式

计算思维:区别逻辑思维(数学)和实证思维(物理)的第三种思维模式

编程不单纯是求解计算问题,不仅要思考解决方法,还要思考用户体验、执行效率等


二、Python开发环境配置

(一)Python语言概述

Python 译为 “蟒蛇”

Python语言拥有者是 Python Software Foundation(PSF),PSF是非盈利组织,致力于保护Python 语言开放、开源和发展

2002年,Python 2.x;2008年,Python 3.x

(二)Python基本开发环境IDLE

Python官方提供,适用于小规模程序开发

Python官方环境:Python解释器+IDLE开发环境

  • 轻量级:只有几十MB大小,使用灵活
  • 功能丰富:编辑器+交互环境+标准库+库安装工具...

(三)Python程序编写与运行

Python的两种编程方式

  • 交互式:在IDLE中,通过输入每条语句,即时运行结果,比较适合单条语法的练习
  • 文件式:在一个源程序的文件中,批量地编写一组语句,且一次性执行产生相关结果,是编程的主要方式

例1:圆面积的计算(根据半径 r 计算圆面积)

 例2:同切圆绘制(绘制多个同切圆)

 例3:五角星绘制(绘制一个五角星)


三、实例1:温度转换

(一)问题分析

(1)分析问题的计算部分:

温度数值需要标明温度体系,即摄氏度或华氏度,转换后也需要给出温度体系

(2)划分边界:

  • 输入:带华氏或摄氏标志的温度值
  • 处理:根据温度标志选择适当的温度转换算法
  • 输出:带摄氏或华氏标志的温度值

(3)输入输出格式设计:

标识放在温度最后,F表示华氏度,C表示摄氏度,如82F(华氏82度)、28C(摄氏28度)

(4)算法设计:

算法设计

(二)实例编写

#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("输入格式错误")

保存为TempConvert.py文件,IDLE打开文件,按F5运行

运行结果

(三)举一反三

1、输入输出的改变:

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

  • 标识改变,放在温度数值之前:C82、F28
  • 标识字符改变为多个字符:82Ce、28Fa

2、计算问题的拓展:

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

  • 货币转换、长度转换、重量转换、面积转换...
  • 问题不同,但程序代码相似

    四、Python程序语法元素分析

  • 缩进:用来表达语句之间的层次关系和包含关系
  • 注释:辅助性信息,并不被计算机所执行
  • 命名:为变量关联标识符的过程
  • 变量:表示数据值的占位符
  • 保留字:计算机的程序语言中,默认保留下来由程序自身使用的一些信息,在Python语言当中一共有35个保留字(本课程中需要掌握26个保留字)
    ---------------------------------------------------------------------------------------------------------------------------
  • 数据类型:字符串、整数、浮点数、列表
    ---------------------------------------------------------------------------------------------------------------------------
  • 赋值符号及赋值符号组成的赋值语句
  • 由保留字 if-elif-else 构成的分支语句
  • 函数:input() 输入函数、print() 输出函数及格式化、eval() 评估函数
     

(一)程序的格式框架

1、代码高亮:编程的色彩辅助体系,不是语法要求,对运行结果没有影响

2、缩进:一行代码开始前的空白区域,表达程序的格式框架,分为单层缩进和多层缩进(缩进中的缩进)

  • 严格明确:缩进是语法的一部分,缩进不正确将导致程序运行错误
  • 所属关系:表达代码间包含和层次关系的唯一手段
  • 长度一致:程序内一致即可,一般用4个空格或1个TAB

3、注释:用于标记程序功能、提高代码可读性的辅助性文字,不被程序执行

  • 单行注释:以 # 开头,其后内容为注释
  • 多行注释:以 ''' 开头和结尾

(二)命名与保留字

1、变量:程序中用于保存和表示数据的占位符号

  • 变量采用标识符(名字)来表示
    如:TempStr 是变量名字,表达温度字符的信息,在程序中即是一个占位符号
  • 可以使用等号(=)向变量赋值或修改值,=被称为赋值符号
    如:TempStr="82F" 表示向变量 TempStr 赋值 "82F" 的字符串

2、命名:变量采用标识符(名字)来表示,关联标识符的过程叫命名

  • 命名规则:大小写字母、数字、下划线和中文等字符及组合
    如:TempStr、Python_Great、这是门Python好课
  • 注意事项:大小写敏感首字符不能是数字、不与保留字相同
    如:Python 和 python 是不同变量;123Python是不合法的

3、保留字(也叫关键字):被编程语言内部定义并保留使用的标识符

  • Python 语言有35个保留字
    如:if、elif、else、in
  • 保留字是编程语言的基本单词,大小写敏感
    如:if 是保留字,If 可以是用户当做变量来使用
  • 注意35个保留字中有3个是大写开头的(True、False、None),小写的 true 是用户定义的变量,并不是保留字
35个保留字,标黑色的(26个)是在Python基础语法体系中出现的,即这门课涉及到的

(三) 数据类型

数据类型是指供计算机程序理解的数据形式

程序设计语言不允许存在语法歧义,需要定义数据的形式。通过一定方式向计算机表达数据的形式,如:10,011,101

  • 整数类型:10011101
  • 字符串类型:"10,011,101"
  • 列表类型:[10,011,101]

1、字符串:由0个或多个字符组成的有序字符序列

  • 由一对单引号或一对双引号表示
    如:"请输入带有符号的温度值:"         'C'
  • 是字符的有序序列,可以对其中的字符进行索引
    如:"请"     是     "请输入带有符号的温度值:"        的第0个字符

(1)字符串的序号:

  • 正向递增序号:从0开始
  • 反向递减序号:从-1(即最后一个字符)开始

(2)字符串的使用:使用 [ ] 获取字符串中一个或多个字符

  • 索引:返回字符串中单个字符              <字符串>[M]
    如:"输入带有符号的温度值:"[0]           
           TempStr[-1] 表示获得 TempStr 这样一个变量字符串的倒数第一个字符
  • 切片:返回字符串中一段字符子串       <字符串>[M:N]
    如:"请输入带有符号的温度值:"[1:3]       取出其中的第1个、第2个字符,但不到第3个字符
            TempStr[0:-1]      从0开始,但不到字符串的最后一个字符的字符子串,相当于把字符串                                      的最后一个字符去掉

2、数字类型:

  • 整数:数学中的整数,包括正数和负数
    如:32、-89
  • 浮点数:数学中的实数,带有小数部分,包括正数和负数
    如:1.8、-1.8、-1.0

3、列表类型:由0个或多个数据组成的有序序列

  • 列表使用 [ ] 表示,采用逗号(,)分隔各元素
    如:['F','f'] 表示两个元素 'F' 和 'f'
  • 使用保留字 in 判断一个元素是否在列表中
    如:TempStr[-1] in ['C','c']    判断前者是否与列表中某个元素相同(TempStr字符串的最后一个字符是不是大写的C或小写的c,若是其中之一,这段语句将产生一个True真值)

(四) 语句与函数

1、赋值语句:赋值符号(单一等号,即=)构成的一行代码

  • 赋值语句用来给变量赋予新的数据值
    如:C=( eval ( TempStr[0:-1] ) - 32 ) / 1.8     将右侧运算的结果赋给变量C
  • 赋值语句右侧的数据类型同时作用于变量
    如:TempStr = input (" ")     input( )返回一个字符串,那么TempStr也是一个字符串类型

2、分支语句:由判断条件决定程序运行方向的语句

  • 使用保留字 if elif else 构成条件判断的分支结构
    如:if TempStr[-1] in ['F','f']:      如果中间条件成立,将执行冒号后带有缩进的语句;若条件不成立,那么冒号及冒号后的缩进语句将会被跳过
  • 每个保留字所在行最后存在一个冒号(:),为语法的一部分。冒号及后续缩进用来表示后续语句与条件的所属关系

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

input()、print()、eval() 都通过() 对内部信息产生相应的处理过程
  • 类似于数学中的函数y=f(x),根据因变量产生结果
    如:print() 函数,在括号中输入我要输出的信息,那么在程序结果中就会打印该信息
  • 函数采用 <函数名>(<参数>) 方式使用
    如:eval ( TempStr[0:-1] ) 中,TempStr[0:-1] 是参数

(五) Python程序的输入输出

1、输入函数 input():程序获得外部信息的一个过程,从控制台获得用户输入的信息

  • input() 函数的使用格式是:<变量> = input (<提示信息字符串>)
  • 用户输入的信息以字符串类型保存在 <变量>
  • 如:TempStr = input ("请输入")  
           请输入并不作为 TempStr 的一部分,它是提示用户来输入什么样的信息
           由用户在控制台输入的信息会以字符串的类型保存在 TempStr 变量中

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

  •  print() 函数的基本使用格式:print(<拟输出字符串或字符串变量>)
  • 字符串类型的一对引号仅在程序内部使用,输出无引号
  • 如:print("输入格式错误")     
           向控制台输出“输入格式错误”这样的信息,用于提示使用软件的用户你输入的格式错误了
  • print() 函数的格式化:

3、评估函数 eval():去掉参数最外侧引号并执行余下语句的函数

  • 简单讲:能够将数字的字符串形式变为数字形式
  • 更广泛意义:能将任何字符串形式的信息变成 Python 语句

  • eval() 函数的基本使用格式:eval( <字符串或字符串变量> )
    如:eval("1+2") 输出数字 3
           eval(' "1+2" ')  输出字符串 '1+2'
           eval ( ' print("hello") ' ) 输出 hello
  • eval ( TempStr [0:-1] )
    如果 TempStr[0:-1] 值是一个字符串"12.3",输出是:数字12.3

(六) “温度转换”代码分析

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cheeryang_ego

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值