乙烯依旧 发表于 2021-5-7 16:54:13

python学习第38讲作业:花药常高温数据比较

需要实现的在附件图片里
实现代码如下:
# 定义常高温比较函数
def anther(file1, file2):

    target_f1 = 'nw' + str(i)
    target_f2 = 'hw' + str(i)
    print('现在的目标是: %s%s' % (target_f1, target_f2))

    ## 对于file1

    f1 = open(file1)
    # 准备一个列表用以储存nw1的常温开裂情况
    target_list_f1 = []

    # 在文件1中找出 nw1的行
    for each_line in f1:

      if target_f1 in each_line:
            target_list_f1.append(each_line.strip().split(' ')) # 匹配目标的行存储在列表target_list_f1中
    f1.close()

    print('在常温文件中目标数据为:\n %s' % target_list_f1)


    ## 对于file2

    f2 = open(file2)
    #创建储存常温花药hw1的列表
    target_list_f2 = []

    #查找hw1的高温温花药
    for each_line in f2:
      if target_f2 in each_line:
            target_list_f2.append(each_line.strip().split(' '))

    print('在高温文件中目标数据为:\n %s' % target_list_f2)
    f2.close()


    # 将hw1的常高温数据比上常温数据存于另一文件中
    for a in target_list_f1:
      for b in target_list_f2:
            Ratio_list.append('%s\t%s\t%s\t%.5f\n' % (target_f1, a, b, float(b)/float(a)))


# 储存比较数据的列表
Ratio_list = []

#应用比较函数
i = 1
for i in range(1,3):
    anther('test1.txt', 'test2.txt')
    i += 1

# 将比较数据从列表储存至文件中
f3 = open('Ratio.txt', 'w')
f3.write('Target\tHigh temperature\tNormal temperature\tRatio\n')
f3.writelines(Ratio_list)
f3.close()

#查看比较数据
f3 = open('Ratio.txt')
for eachline_f3 in f3:
    print(eachline_f3)
f3.close()



ps:这个是自己项目分析数据里面的文本操作,以前是一个师兄帮我弄的,这次和甲鱼老师学习后自己花两小时写出来了,开心。跟着甲鱼老师好好学,哈哈
页: [1]
查看完整版本: python学习第38讲作业:花药常高温数据比较