70
Python程序设计 湖南大学信息科学工程学院 陈娟

Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

  • Upload
    others

  • View
    30

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

Python程序设计湖南大学信息科学工程学院 陈娟

Page 2: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

Python课程简介

Page 3: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

参考书籍Python语言程序设计基础

高等教育出版社

嵩天等

Page 4: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

参考书籍

书名 出版社 作者

Python编程:从入门到实践 人民邮电出版社 Eric matthes

python科学计算第二版 清华大学出版社 张若愚

Python数据挖掘入门与实践 人民邮电出版社 Robert Layton

利用Python进行数据分析 人民邮电出版社 Wes McKnney

Python程序设计 人民邮电出版社 董傅国

Python程序设计实验指导 人民邮电出版社 董傅国

Python+Pygame 游戏学习(初级教程)

小五义

Page 5: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

参考网站

http://www.icourses.cn/home/# 爱课程网

https://www.python.org Python官网

http://pythontutor.com/ 在线运行演示

https://think.cs.vt.edu/blockpy/load 积木化Python编程

http://www.pythondoc.com Python学习大本营

http://www.pythontip.com Python Tip

https://github.com/xianhu/LearnPython Learn Python

https://learnxinyminutes.com/docs/zh-cn/python3-cn/ X分钟速成Python3

https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000

廖雪峰Python3教程

Page 6: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

Python语言概述

Page 7: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言概述

• Python语言历史• 1998年,诞生

• 2002年,Python2.x

• 2008年,Python3.x

Guido van Rossum

Page 8: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言概述

• Python网址• https://www.python.org/

• Python软件基金会是一个致力于Python编程

语言的非营利组织,成立于2001年3月6日。

• 基金会的任务在于促进Python使用社群的发

展,并负责Python社群中的各项工作,包括

开发Python核心版本、管理智慧财产权、开

发者研讨会(包含PhyCon),以及募款。

Page 9: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言概述

• 开源软件• https://opensource.org/

• open-source,其源码可以被公众使用的软件,并且此软件的使用,修改和分发也不受许可证的限制。

Page 10: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言概述

• 编写helloworld程序

>>>print("HelloWorld")

HelloWorld

提示符

源程序

Page 11: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言概述

• Python语言特点

• Python语法简洁

• Python生态丰富

• Python多语言集成

Page 12: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言概述

• Python语言特点

• 平台无关

• 强制可读

• 支持中文

• 模式多样

• 类库便捷

• 通用语言

Page 13: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言概述

Page 14: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

Python语言开发环境配置

Page 15: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• Python安装

• www.python.org/downloads/

• 根据操作系统选择不同版本

• 下载相应的Python3.0系列版本程序

Page 16: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• Python安装

Page 17: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• 交互式启动

• 方法1:

cmd启动Windows命令行工具

exit()或quit()可退出python环境

Page 18: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• 交互式启动

• 方法2:

• 调用IDLE来启动Python运行环境

Page 19: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• 文件启动

• 方法1:

• 用任何文本编辑器(例如记事本),按照语法格式编写代码,保存为文件。

• 在命令行模式下运行该文件。

Page 20: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• 文件启动

• 方法2:

打开IDLE

选择File菜单的New File(Ctrl+N)新建一个程序

输入语句

选择File菜单的Save(Ctrl+S)保存该程序

选择Run菜单的Run(F5)运行该程序

若要再次修改或运行该程序,可选择File菜单的Open打开该程序

Page 21: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• 文件启动

• 方法2:

Page 22: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• Anaconda安装

• Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180

多个科学包及其依赖项。

• 因为包含了大量的科学包,Anaconda 的下载文件比较大(约 531 MB),如果

只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小

的发行版(仅包含conda和 Python)。

Page 23: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• Anaconda安装

https://www.anaconda.com/distribution/

Page 24: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• Anaconda使用

spyder 一个使用Python语言、跨平台的、科学运算集成开发环境

Page 25: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语言开发环境配置

• Anaconda使用

输入代码

运行代码

运行结果

新建程序

Page 26: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python程序实例

例 1.1 用python程序实现摄氏度和华氏度转换

摄氏度以1标准大气压下水的结冰点为0度,沸点为100度,将温度进

行等分刻画。

华氏度以1标准大气压下水的结冰点为32度,沸点为212度,将温度

进行等分刻画。

Page 27: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python程序实例

例 1.1 用python程序实现摄氏度和华氏度转换

根据华氏和摄氏温度定义,转换公式如下:

C = ( F –32 ) / 1.8

F = C * 1.8 + 32

其中,C表示摄氏温度,F表示华氏温度

Page 28: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python程序实例

例 1.1 用python程序实现摄氏度和华氏度转换

#温度转换TempStr = input("请输入带有符号的温度值: ")if TempStr[-1] in ['F','f']:

C = (eval(TempStr[0:-1]) - 32)/1.8print("转换后的温度是{:.2f}C".format(C))

elif TempStr[-1] in ['C','c']:F = 1.8*eval(TempStr[0:-1]) + 32print("转换后的温度是{:.2f}F".format(F))

else:print("输入格式错误")

Page 29: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

Python语法元素分析

Page 30: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

程序的格式框架

Python语言采用严格的缩进来表明程序的格式框架。

缩进指每一行代码开始前的空白区域,用来表示代码

之间的包含和层次关系。

1个缩进=4个空格

Page 31: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 程序的格式框架

#1.1温度转换TempStr = input("请输入带有符号的温度值: ")if TempStr[-1] in ['F','f']:

C = (eval(TempStr[0:-1]) - 32)/1.8print("转换后的温度是{:.2f}C".format(C))

elif TempStr[-1] in ['C','c']:F = 1.8*eval(TempStr[0:-1]) + 32print("转换后的温度是{:.2f}F".format(F))

else:print("输入格式错误")

缩进

缩进

缩进

Page 32: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 程序的格式框架

缩进表达了所属关系

单层缩进代码属于之前最邻近的一行非缩进代码

多层缩进代码根据缩进关系决定所属范围

不是所有代码都可以通过缩进包含其他代码

Page 33: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析• 注释

注释的两种方法:

单行注释以#开头

#Here are the comments

多行注释以’’’(三个单引号)开头和结尾

’’’

This is a multiline comment

Used in Python

’’’

Page 34: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析• 命名与保留字

Python语言允许采用大写字母、小写字母、数字、下划线(_)和汉字等

字符及其组合给变量命名,但名字的首字符不能是数字,中间不能出现

空格,长度没有限制

注意:标识符对大小写敏感,python和Python是两个不同的名字

Page 35: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析• 命名与保留字

Python3.x保留字列表(33个)

and elif import raiseas else in returnassert except is trybreak finally lambda whileclass for nonlocal withcontinue from not yielddef global or Truedel if pass False None

Page 36: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 字符串

Python语言中,字符串是用两个双引号“”或者单

引号‘’括起来的一个或多个字符。

Page 37: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

字符串

字符串中的编号叫做“索引”

Python中字符串索引从0开始,一个长度为L的字符串最后一个字符的位置是L-1

Python同时允许使用负数从字符串右边末尾向左边进行反向索引,最右侧索引值是-1,最左侧字符序号为-L

Page 38: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

-3 -2 -1TempStr 1 8 c

0 1 2

字符串

Tempstr[-3] Tempstr[0] 字符1Tempstr[-2] Tempstr[1] 字符8Tempstr[-1] Tempstr[2] 字符c

Page 39: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析字符串字符串取子串

<string>[<start>:<end>]

start和end都是整数型数值,这个子序列从索引start开始直到索引end结束,但不包括end位置。

如果strat或end缺失,表示字符串把开始或结束索引值作为默认值

字符串采用unicode编码,一个英文字符或汉字长度均为1

Page 40: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析字符串字符串取子串

Page 41: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析字符串字符串取子串

TempStr[:-1]

从左边第一个字符到从右边数的第二个字符

(最右边第一个字符之前)即18

Page 42: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析字符串字符串基本运算符

操作符 描述

x+y 连接两个字符串x与y

x*n与n*x 复制n次字符串x

x in s 如果x是s的子串,返回True,否则返回False

str[i] 索引,返回第i个字符

str[N:M] 切片,返回第N到M的子串,其中不包含M

Page 43: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析字符串

转义字符\

反斜杠字符(\)是一个特殊字符,在字符串中表示转义,

即该字符与后面相邻的一个字符组成了新的含义。

\n表示换行,\\表示反斜杠,\’表示单引号

\”表示双引号,\t表示制表符(Tab)

Page 44: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 赋值语句

<变量>=<表达式>

Python语言中,=表示“赋值”,即将等号右侧的值计

算后将结果值赋给左侧变量,包含等号(=)的语句称为“赋值语句”

Page 45: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 赋值语句

同步赋值语句:同时给多个变量赋值

<变量1>,…,<变量N>=<表达式1>,…,<表达式N>

Page 46: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 赋值语句交换变量x和y的值

方法1:

t=x

x=y

y=t

方法2:

x,y=y,x

Page 47: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 输入语句

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

<变量> = input( <提示性文字> )

获得用户输入之前,input()函数可以包含一些提示性文字

Page 48: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 输入语句

例>>>input("请输入: ")请输入: python'python'>>> input("请输入: ")请输入: 1024.256'1024.256'

不管用户输入字符或数字,input()函数统一按照字符串类型返回结果

Page 49: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• eval()函数

eval(<字符串>)

以Python表达式的方式解析并执行字符串,将返回结果输出

Page 50: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• eval()函数

>>>x = 1>>>eval("x + 1")2>>>eval("1.1 + 2.2")3.3

Page 51: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• eval()函数

>>> TempStr = “35c”>>> eval(TempStr[0:-1])35

Page 52: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• eval()函数

>>> eval(“hello”)>>> eval(“’hello’”)’hello’

Page 53: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• eval()函数

>>>value=eval(input(“请输入数字”)

当用户需要输入数值时

Page 54: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析• 分支语句分支语句是控制程序运行的一类重要语句,它的作用是根据判断条件选择程序执行路径if <条件1>:

<语句块1>elif <条件2>:

<语句块2>... else:

<语句块N>

Page 55: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析• 分支语句

if TempStr[-1] in ['F','f']:C = (eval(TempStr[0:-1]) - 32)/1.8print("转换后的温度是{:.2f}C".format(C))

elif TempStr[-1] in ['C','c']:F = 1.8*eval(TempStr[0:-1]) + 32print("转换后的温度是{:.2f}F".format(F))

else:print("输入格式错误")

Page 56: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 输出函数

print(字符串)

用来输出字符信息,或以字符形式输出变量。

当输出变量时,需要采取格式化输出方式,通过format()

方法将待输出变量整理成期望输出的格式

Page 57: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 输出函数当用户需要输入数值时

>>>C1,C2=10,10.24024>>> print("转换后的温度是{:.2f}C".format(C1))转换后的温度是10.00C>>> print("转换后的温度是{:.2f}C".format(C2))转换后的温度是10.24C

大括号表示一个槽位置括号的内容为format方法的参数C1

:.2f表示数值取两位小数

Page 58: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 输出函数print()函数通过%来选择要输出的变量。

例如 用户输入两个数字,计算并输出平均数

Page 59: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 循环语句

控制程序运行,根据判断条件或计数条件确定一段程序的运行次数

Page 60: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 循环语句

while<条件><语句块1>

<语句块2>

当条件为真时,执行语句块1的语句。语句块1通过缩进表达与while的所属关系。当条件为假时,退出循环,执行语句块2。

Page 61: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析• 循环语句

#e1.2温度转换循环TempStr = input("请输入带有符号的温度值: ")while TempStr[-1] not in ['N','n']:

if TempStr[-1] in ['F','f']:C = (eval(TempStr[0:-1]) - 32)/1.8print("转换后的温度是{:.2f}C".format(C))

elif TempStr[-1] in ['C','c']:F = 1.8*eval(TempStr[0:-1]) + 32print("转换后的温度是{:.2f}F".format(F))

else:print("输入格式错误")

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

例 1.2 连续接收用户输入的温度,直到用户输入n或N,退出循环

Page 62: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析

• 函数

函数可以理解为对一组表达特定功能表达式的封装。

能够接收变量并输出结果。

def 函数名(参数):

<函数体>

Page 63: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析• 函数

#e2.3温度转换函数.pydef tempConvert(ValueStr):

if ValueStr[-1] in ['F','f']:C = (eval(ValueStr[0:-1]) - 32)/1.8print("转换后的温度是{:.2f}C".format(C))

elif ValueStr[-1] in ['C','c']:F = 1.8*eval(ValueStr[0:-1]) + 32print("转换后的温度是{:.2f}F".format(F))

else:print("输入格式错误")

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

例 1.3 将温度转换定义为函数

函数定义

调用函数

Page 64: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

练一练1.1根据温度转换程序的思路,按照1美元兑换7元人民币汇率编写一个美元和人民币的双向兑换程序。

循环执行,直到用户输入n为止

(提示:从第2个字符到最后的字符是2:)

(以学号的尾号后两位作为美元的金额,学号的尾号后三位作为人民币的金额)

Page 65: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

练一练1.2

输入贷款金额、期限、年利率,按每月还款本金相同,计算每期需要归还的利息和金额以学号后五位的10倍作为贷款金额

Page 66: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析• 循环语句

遍历结构是range函数

循环N次for 循环变量 in range(初值,终值,步长):

<语句块>

Page 67: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

Python语法元素分析例 计算1到100的和

s=0for i in range(1,101):

s=s+iprint(s)

Page 68: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

练一练1.31实现isprime函数,参数为整数。如果参数为质数,返回True,否则返回False。(1)在主程序中调用该函数,显示100之内的质数,每行显示五个数。

Page 69: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

练一练1.32(2)编写一个程序,调用isprime函数,求出所有的两位绝对素数。

Page 70: Python程序设计 - hnu.edu.cnkczxsp.hnu.edu.cn/upload/20190825105159133.pdf · 程序实例 例. 1.1 用python程序实现摄氏度和华氏度转换 摄氏度以. 1标准大气压下水的结冰点为0度,沸点为100度,将温度进

湖南大学信息科学工程学院陈娟

练一练1.33(3)在主程序中调用isprime函数,验证100之内大于2的偶数符合哥赫巴德猜想。每行显示五个数。哥赫巴德猜想是任一大于2的偶数都可写成两个质数之和。