作业1
用冒泡算法、选择排序写出下面数字从大到小每一轮结果
8,6,1,7,13,9
答案:
#冒泡排序
pop_list=[8,6,1,7,13,9]
print('没排序前的列表:',pop_list)
for i in range(len(pop_list)-1):
for j in range(len(pop_list)-i-1):
if pop_list[j]>pop_list[j+1]:
pop_list[j],pop_list[j + 1]=pop_list[j+1],pop_list[j]
print(f'冒牌排序第{i+1}轮结果的列表:',pop_list)
print('------'*10)
#选择排序
pop_list=[8,6,1,7,13,9]
print('没排序前的列表:',pop_list)
for i in range(len(pop_list)-1):
min_index=i
for j in range(i+1,len(pop_list)):
if pop_list[min_index] >pop_list[j]:
min_index=j
pop_list[min_index],pop_list[i]=pop_list[i],pop_list[min_index]
print(f'选择排序第{i+1}轮结果的列表:',pop_list)
输出案例:
书籍价格查询
有一个"/data/书籍存单.csv"文件,内容如下图所示。小明编写代码,想查询小说《封神榜》的价格,请补充代码中缺失的部分
代码;
lis=[['书名','价格','库存量'],
['西游记', '40', '253\n'],
['红楼梦', '80', '452\n'],
['三国演义','60','164\n'],
['聊斋志异', '50', '172\n'],
['老残游记', '55', '492\n'],
['封神榜', '74', '497\n'],
['镜花缘', '64', '573\n'],
['儒林外史', '43', '319\n']]
with open('a.csv', 'w+', encoding='utf-8') as f:
for i in lis:
f.write(','.join(i))
with open('a.csv', 'r+', encoding='utf-8') as f:
for line in f.readlines():
a=line.split(",")
if a[0]=='封神榜':
print(a[1])
答案:
1, line
2, a[1]