python读取文件的内容并解析

比眉伴天荒 2022-01-15 00:27 506阅读 0赞

文章最前: 我是Octopus,这个名字来源于我的中文名—章鱼;我热爱编程、热爱算法、热爱开源。所有源码在我的个人github ;这博客是记录我学习的点点滴滴,如果您对 Python、Java、AI、算法有兴趣,可以关注我的动态,一起学习,共同进步。

相关文章:

  1. LeetCode:55. Jump Game(跳远比赛)
  2. Leetcode:300. Longest Increasing Subsequence(最大增长序列)
  3. LeetCode:560. Subarray Sum Equals K(找出数组中连续子串和等于k)

文章目录:

一,python解析文件:

二,用json读取数组数据:


一,python解析文件:

1)读取文件存入内存

2)然后根据字符串进行处理

3)最后将数据转换成数组

4)最后利用dataframe解析数据

  1. # _*_ coding: utf-8 _*_
  2. import pandas as pd
  3. # 获取文件的内容
  4. def get_contends(path):
  5. with open(path) as file_object:
  6. contends = file_object.read()
  7. return contends
  8. # 将一行内容变成数组
  9. def get_contends_arr(contends):
  10. contends_arr_new = []
  11. contends_arr = str(contends).split(']')
  12. for i in range(len(contends_arr)):
  13. if (contends_arr[i].__contains__('[')):
  14. index = contends_arr[i].rfind('[')
  15. temp_str = contends_arr[i][index + 1:]
  16. if temp_str.__contains__('"'):
  17. contends_arr_new.append(temp_str.replace('"', ''))
  18. return contends_arr_new
  19. if __name__ == '__main__':
  20. path = 'event.txt'
  21. contends = get_contends(path)
  22. contends_arr = get_contends_arr(contends)
  23. contents = []
  24. for content in contends_arr:
  25. contents.append(content.split(','))
  26. df = pd.DataFrame(contents, columns=['shelf_code', 'robotid', 'event', 'time'])
  27. print(df)

二,用json读取数组数据:

  1. # _*_ coding: utf-8 _*_
  2. import pandas as pd
  3. import json
  4. file = open("event.txt")
  5. context = file.readline()
  6. data = json.loads(context)
  7. data = data['data']
  8. pd.DataFrame(data, columns=['shelfCode', 'robotId', 'action', 'time'])

第二种方法比较简洁,更适合于生产环境

发表评论

表情:
评论列表 (有 0 条评论,506人围观)

还没有评论,来说两句吧...

相关阅读