(1)主程序
lst1=readfile("in.csv")#校园书吧库存图书信息存储在文件"in.csv"
while True:
print("1.验证ISBN校验码;2.统计出版社费用;3.操作结束")
opt=int(input("请输入操作编号(1-3):"))
If opt==1:
isbn=input("请输入ISBN号:")
If check(isbn):
print("校验码正确")
else:
print("校验码错误")
elif opt==2:
code=input("请输入出版社代码:")
money=total(code)
print("书吧中该出版社出版的图书总价:%.2f元"%money)#输出的总金额保留2位小数点
else:
print("操作结束")
break
运行程序,若输入opt值为4,程序将
(2)读写文件
小李将校园书吧库存图书信息存储在文件"in.csv"中,内容如图所示。函数readfile()用于逐行读取文件数据存入列表并返回。请在划线处填入合适的代码。

import pandas as pd
def readfile(filename):#读csv格式文件内容,将其存入列表并返回
df1=pd.read_csv(filename,encoding="GBK")
lst=[]
for i in df1.index:
isbn=df1["ISBN"][i]
num=df1["图书数量"][i]
price=df1["单价(元)"][i]
lst.append([isbn,num,price]) #添加到列表
Return
(3)校验码验证
ISBN最后一位的校验码用来检验前面12数字是否准确,是保护知识产权的一种检验方法。
计算方法如下:
①将ISBN中前12位数字从左到右依次编号为“1、2、3、...、12”。
②若数字编号是奇数,则对应权值为1,否则权值为3。首先将ISBN中前12位的数字值与对应权值相乘,然后将计算所得值进行累加。
③最后,用10减去第第②步结果对10整除的余数,所得结果即为校验码。
def check(ISBN): #对ISBN校验码验证
n=len(ISBN)
val=0;k=3
for i in range(0,n-1):
if '0'<=ISBN[i]<='9':
k=4-k
val+=int(ISBN[i])*k
if result==int(ISBN[-1]):
Return True
else:
Return False
(4)统计校园书吧中某出版社出版的所有图书总价
'''
列表lst1中的部分数据如:[['978-7-5139-3066-6',7,59.80],['978-7-5063-3174-6',9,48.00],......]
'''
Def total(code):#统计书吧中出版社代码为code的所有图书总价
n=len(lst1)
money=0
for i in range(n):
isn=lst1[i][0].split('-') #将字符串list1[i][0]以“-”为分隔符,分割成多个字符串组成的列表
if isn[2]==code:
Return money

同类型试题

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2


y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

