def data_in():
f = open("data.txt","w")
num = int(input("请输入想要统计的人数:"))
#班上的人数num
count = 1
while count <= num:
print("此次是您的第%d次输入" % count)
#%前面不是逗号,而是空格
s = input("请依次输入统计人姓名及每次作业成绩:")
s += "\n"
f.write(s)
count += 1
f.close()
#数据写入函数
def data_process():
f = open("data.txt")
lines = f.readlines()
#形成list类型数据
f.close()
results = []
for line in lines:
data = line.split()
#将每一行的数据分开
sum = 0
#总数初始化为0
for score in data[1:]:
sum += int(score)
result = "%s\t:%d\n" % (data[0], sum)
results.append(result)
return results
#数据加工函数
def result_out(results):
output = open("results.txt", "w")
output.writelines(results)
output.close()
#数据输出函数
data_in()
results = data_process()
result_out(results)
以上程序中所用到的知识点如下:
用法:sentence.split() #split()按照字符串的空格进行分割,返回一个list #括号内填入指定符号,可以指定分割
用法:s.join(list) #join()是字符串的方法 #字符串作为连接符,连接括号内的list
遍历
#for...in...
索引访问
#通过[]加索引
切片
#与spilt方式同
连接字符
#连接符将每个字符连接
打开文件
f = open('data.txt') #默认只读形式 f = open('data.txt','w') #正常写入,覆盖原内容 #数据文件可不存在,自动新建 f = open('data.txt','a') #写入,不覆盖原内容
读取文件
read()
用法:data = f.read()
#把文件内所有内容读入一个字符串
readline()
#读取一行内容
readlines()
#把内容按行读取至一个list中
写入文件
write()
用法:f.write(data) writelines()
用法:f.writelines(results)
#用于输出list单元 #一般每一行与list单元对应,故每个list单元后有换行符
关闭文件
close()
用法:f.close()
#lines为list类型数据
#list中每个个体都遍历一遍,被line取到