python刷题
1.使用列表的方法存储一个矩阵以及进行矩阵的运算
a)运算需求:给定一个n×n的方阵,本题要求计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和。副对角线为从矩阵的右上角至左下角的连线。
b)输入样例:
4
2 3 4 1
5 6 1 1
7 1 8 1
1 1 1 1
c)输出结果:
35
n = int(input())
s = []
for i in range(n):
ss = []
a = input().split() # 按行输入
for j in a:
ss.append(int(j)) #将每一行以空格隔开的数据,以整型类型逐个追加到ss列表中
s.append(ss) # 按行追加至s列表
sum = 0
for i in range(n):
for j in range(n):
if i != n-1 and j != n-1 and i+j != n-1: # 对数据进行操作的约束条件
sum += s[i][j]
print(sum)
2.删除列表中的某个元素:remove、pop、del。
1).remove删除单个元素,删除首个符合条件的元素,按值删除。
s = [1,4,2,3,4,5]
s.remove(4)
print(s)
# 输出结果:[1,2,3,4,5]
2).pop删除单个或多个元素,按索引删除。
s = [1,2,3,4,5,6]
s.pop(2)
print(s)
# 输出结果:[1,2,4,5,6]
s = ['this','is','my','book']
s.pop(1)
print(s)
# 输出结果:['this','my','book']
3).del按索引删除。
s = [1,2,3,4,5,6]
del s[1]
print(s)
# 输出结果:[1,3,4,5,6]
s = ['this','is','my','book']
del s[2]
print(s)
# 输出结果:['this','is','book']
del可删除指定范围内的值或整个数据对象(列表、集合等)
s = [1,2,3,4,5,6]
del s[1:4]
print(s)
# 输出结果:[1,5,6]
s = [1,2,3,4,5,6]
del s
# 删除后,找不到对象
3.range函数倒着取值。
for i in range(5)
'''
相当于for i in range(0,5,1)
从0到4
左闭右开,默认步长为1
'''
for i in range(5,0,-1)
'''
从5到1
左闭右开,默认步长为1
'''