第三章
算法的程序实现
1、用计算机编程解决的一般过程
2、Python语言程序设计
3、简单的算法及其程序设计
教学目标
掌握变量及数据结构
变量就像是一房间
变量名就是房间号
每次入住的客人就是变量值
666
666房=糖果
name
李政言
变量的理解
例如:我们要存放一个同学的名字、语文、数学、英语的成绩
name=“李政言”
这里我们用到的“=”称为赋值运算符,就是把右边的值赋予给左边的变量
yw
100
yw=100
常量与变量
常量:程序运行过程中,其值不能改变的量。如3.14、2、 ' red '等。
变量:程序运行过程中,其值可以改变的量。
赋值语句
赋值语句的一般形式:
变量名 = 表达式
赋值符号
变量值的修改
变量赋值以后,这个值一直存在,直到赋予新的值。
计算圆的面积
pi=3.14
r=10
S=pi*r*r
print(“s=“,s)
s=314.0
赋值运算符=的优先级要低于算术运算符* / + -
所以程序是先计算表达式的值,再赋值给变量
a=10
a=a+5
b=a+5
print(a) ______
print(b) ______
注意事项:
1、变量名由字母(包含汉字)、数字、下划线(_)组成只能以字母和 _ 开头。
2、变量名不能和python保留字相同,比如 print input
3、变量名区分大小写
建议使用拼音、英文单词或他们的缩写
例如 表示姓名的变量可以是 name xingming xm
变量命名规则
SUM ≠ sum ≠ Sum
r
Python关键字简要说明
Python关键字只允许用来表达特定的语义,不允许通过任何方式改变它们的含义,也不能用来做变量名、函数名或类名等标识符。
在Python开发环境中导入模块keyword之后,可以使用print(keyword.kwlist)查看所有关键字。
Python 基本数据结构
列表
元组
集合
字典
字符串
Python数据结构
字符串的定义:“”或‘’括起来的一串字符,标点符号也属于字符
字符串长度计算:len();
字符串索引:下标都是从0开始 str1[索引标号]
str1=‘1234567’
len(str1)=7
0
3
Python基本数据结构-字符串
Python基本数据结构-列表 list
列表是Python中内置的有序可变序列,列表的所有元素放在一对中括号“[]”中,并使用逗号隔开,元素的类型可以不同。
当不再使用时,可通过del命令删除列表,删除后不可再调用,观察右边代码前后打印时的区别。
a_list = [] # 创建空列表
b_list = [20, "张三", 177.6]
c_list = list(range(10))
a_list = [1, 2, 3]
print(a_list)
del a_list
print(a_list)
创建列表时,将会开辟一块连续的空间,用于存放列表元素的引用,每个元素被分配一个序号即元素的位置(也叫索引)。索引值从 0 开始,从左到右不断递增。
{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}元素1
元素2
元素3
元素……
元素n-1
元素n
元素
索引
{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}0
1
2
……
n-2
n-1
正向索引,从左到右不断增大
Python基本数据结构-列表元素的访问
列表的切片操作是指从一个大列表中,根据位置特点获取部分元素组成一个子列表进行返回。语法形式如下:
列表对象 [start : end : step]
start表示起始位置索引,省略时表示包含end前的所有元素;
end表示结束位置索引,但结果中不包含结束位置对应的元素,省略时表示包含start后的所有元素;
step表示是步长,默认为1,步长可以是正数也可以是负数,正数表示从左到右,负数表示从右到左。
Python基本数据结构-列表的切片操作
L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']
#取L中的前三个数据
print(L[0:3])
#从索引 1 开始,取出 2 个元素出来:
print(L[1:3])
Python基本数据结构-列表的切片实例
#['Michael', 'Sarah', 'Tracy']
#['Sarah', 'Tracy']
字典是一种映射类型,由若干”键(key) : 值(value)”组成, “键”和“值”之间用冒号隔开,所有“键值对”放在一对大括号“{ }”内,并用逗号分隔。其中“键”必须为不可变类型,在同一个字典中,“键”必须是唯一的,但“值”可以重复。
Python基本数据结构-字典 dict
a_dict = {} # 创建空字典
b_dict = {"姓名":"张三", "年龄": 20}
字典是无序的,因此不支持索引、切片等操作。主要通过字典对象[键]获取对应的值。此外,字典还提供了获取所有键值对、所有键、所有值等方法。
例如: a_dict = {"姓名": "张三", "年龄": 20, "体重": 172, "身高": 172}
print(a_dict["姓名"])
print(a_dict["体重"])
print(a_dict["籍贯"])
“键”不存在时,报错。
张三
172
KeyError: '籍贯'
Python基本数据结构-字典元素的访问
课堂小结
1、变量命名规则
2、Python基本的数据结构
列表:有序可变可重复序列,[],支持切片、索引操作;
元组:有序不可变可重复序列,(),支持切片、索引操作;
字符串:有序不可变字符序列,引号;
集合:无序可变不重复,{},不支持切片、索引操作;
字典:无序可变键值对,{},键不可重复、值可重复,不支持切片、索引操作。
试一试:判断变量名是否合法
count_1
HelloWorld
ans#1
姓名
print
1ans
1.下列变量名在Python中合法的是( )
A.3tou
B.t#x
C._bt
D.god?
课堂练习
C
2.有如下程序段:
a = 2
b = 3
a *= b
a += b
print(a)
上述程序段运行之后打印出的a的值是( )
课堂练习
9
3.变量x = "Hello,World!"中的“World”,请问代码应该如何写:
4.有一个字典 dict = {'Name': 'Jian', 'Age': 18, 'Class': '001'},请问要得到字典中键为“Age”的值的代码是 。
x[6:11]
课堂练习
18
(开放题)德国人华伦海脱于1724年创立了华氏温标。它以水银作测温物质,假定水的融点为32度,沸点为212度,中间分为180度,以°F表示。其绝对零度是?459.67°F。在美国的日常生活中,依然采用这种温标。1742年瑞典人摄氏提出在标准大气压下,把水的冰点规定为0度,水的沸点规定为100度。根据水这两个固定温度点来对玻璃水银温度计进行分度。两点间作100等分,每一份称为1摄氏度。记作1°C。其绝对零度是?273.15°C。摄氏温标后来成为流行的国际标准温标。被全世界绝大部分国家所采用,但美国除外。小唐准备到美国去旅游,为了方便查看每日气温,请设计一个程序能够将能够把华氏温度值转化为摄氏温度值。具体的转换规则请通过网络搜索。
Thanks