一、 数据类型
数值型(整型、实型)、字符型、逻辑型
数值型 Number
字符串型 string
列表 List
元组 Tuple
字典 Dictionary
集合 set
二、 列表
1.列表的定义
列表定义的一般形式为:
说明:
(1) 列表名的命名规则跟变量名一样,不能用数字开头。
(2) 方括号中的元素之间用逗号分隔。
(3) 当列表增加或删除元素时,内存空间自动扩展或收缩。
(4) 列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(称为列表嵌套)。
例如:
a1 = [ ] # 定义空列表
a2 = [1, 2, 3] # 定义3个整数的列表
a3 = [‘red’, ‘green’, ‘blue’] # 定义3个字符串的列表
a4 = [5, ‘blue’, [3, 4]] # 定义元素类型不相同的嵌套列表
2.列表中元素的访问
(1)列表元素用“列表名[下标]”表示
例如:设有5名学生成绩列表
a = [ 82, 94, 65, 77, 86 ]
其元素分别为a[0] = 82; a[1] = 94; a[2] = 65; a[3] = 77; a[4] = 86;
(2)用“列表名[起始下标:结束下标 + 1]”表示列表的片段(列表的部分元素)
例如:设有列表
a = [ 0, 1, 2, 3, ‘red’, ‘green’, ‘blue’]
用交互方式访问其列表的部分元素。
a = [ 0, 1, 2, 3, ‘red’, ‘green’, ‘blue’]
a[0]
0
a[5]
‘green’
a[3:]
[3, ‘red’, ‘green’, ‘blue’]
a[3:5]
[3, ‘red’]
a[:2]
[0, 1]
2.2.2 列表的操作函数
1.添加元素
有3个函数可以在列表中添加元素:append()、extend()、insert()。
(1)用append()函数在列表末尾添加元素
例如:
lst = [ 0, 1, 2, 3]
lst.append(4)
lst
[0, 1, 2, 3, 4]
(2)用extend()函数将另一个列表的元素添加到本列表之后
例如:
a = [1, 2, 3]
b = [‘x’, ‘y’]
a.extend(b)
a
[1, 2, 3, ‘x’, ‘y’]
(3)用insert()函数将元素插入到列表中指定的某个位置
使用insert()函数的格式为:
insert(下标位置, 插入的元素)
例如:
lst = [1, 2, 3]
lst.insert(2, ‘x’)
lst
[1, 2, ‘x’, 3]
(1)用del命令删除列表中指定下标的元素
例如:
lst = [1, 2, 3]
del lst[1]
lst
[1, 3]
(2)用pop()函数删除列表中指定下标的元素
例如:
b = [‘x’, ‘y’, ‘z’]
b.pop(1)
‘y’
b
[‘x’, ‘z’]
(3)用remove(x)函数删除列表中值为‘x’的元素
例如:
a = [ 0, 1, 2, 3]
a.remove(2)
a
[0, 1, 3]
用index()函数可以确定元素在列表中第1次出现的位置。
例如:
str = [‘red’, ‘green’, ‘blue’]
str.index(‘blue’)
2
用sort()函数可以对列表元素进行排序。sort()函数默认为按升序(从小到大)排序,若要按降序(从大到小)排序,则使用参数reverse=True。
例如:
a = [ 84, 15, 27, 63, 41]
a.sort()
a
[15, 27, 41, 63, 84]
a.sort(reverse=True)
a
[84, 63, 41, 27, 15]
用clear()函数可以清空列表中的元素。
例如:
a = [ 0, 1, 2, 3]
a.clear()
a
[]
三、 元组
用()把一些数据括起来,这种数据称为元组。
b = (1, 2, 3)
元组一旦定义,不能改变。
Color = (red, gree, brue)
四、 字典
用一对大括号把元素括起来,字典的元素用“键名:值”组成。即每个元素包含了“键名”和“值”两部分。
D = {“ID”: 1001, “name”: “张大山”,“age”: 21 }
五、 集合 set
S = {1, 2, 3}
六、 输入语句
input() 从键盘输入,都是当作字符来处理。
当需要把转换为整型数值处理时,则使用eval()函数。
例2-2 从键盘上输入二个数,计算二数之和。
print(‘输入第1个数:’)
a = eval(input())
print(‘输入第2个数:’)
b = eval(input())
c = a + b
print(“c=”, a, “+”, b, “=”, c)
例 2-3 交换二个变量的值。
a,b = 3, 5
print(‘a,b=’, a,b)
a,b =b, a # 交换二个变量的值
print(‘a,b=’, a,b)
七、条件语句
if 条件表达式:
语句块 # 语句块的代码缩进4个空格
例2-4: 任意输入二个数,按从小到大的顺序依次输出。
程序代码:
print(‘输入第1个数:’)
a = eval(input())
print(‘输入第2个数:’)
b = eval(input())
print(“排序前:”, a, b)
if a>b:
a,b =b, a
print(“排序后:”, a, b)
运行结果:
if 条件表达式:
语句块1
else:
语句块2
sqrt(25-xx) -5<x<5
例2-6: 计算 y=
sqrt(xx – 25) x<-5 或 x>5
import math
x = eval(input())
if x<5 and x>-5:
y = math.sqrt(25 - xx)
else:
y = math.sqrt(xx - 25)
print(‘y=’, y)
八、 循环
for 循环变量 in range(初值, 终值, 步长值):
循环体
说明:
(1)步长值为1时,可省略
(2)终值不进入循环体,即执行不到终值。
例2-8 计算从1加到10的和。
i=1
s=0
for i in range(1, 11): # 注意,终值不进入循环体.
s = s + i
print(‘i=’, i, ‘: s=’, s)
双重循环
例2-13 应用循环嵌套,编写一个9行9列排列输出的乘法九九表。
for i in range(1, 10):
for j in range(1, i+1):
print(i, ‘’, j, ‘=’, ij, end=’ ‘) # print()语句为了不换行,增加end=" "
print(’’) # 换行
作业:
1. 计算10以内的奇数之和。
2. 应用双重循环,输入一个由“*”组成的5行5列的直角三角形图形。
教学文件系统 密码:2019jsj
代码:
# 1. 计算10以内的奇数之和。
i=a=0
print("奇数为:",end='')
for i in range(0,10,2):
b=i+1
a+=b
print(b," ",end='')
print("\n","奇数之和",a,"\n")
# 2. 应用双重循环,输入一个由“*”组成的5行5列的直角三角形图形。
n=m=0
for n in range(5):
for m in range(n+1):
print("*",end="")
print('')