用python给csv里的数据排序的具体代码


Posted in Python onJuly 17, 2020

1、使用argparse组件,获取命令行参数;使用re组件,获取需要查找的字符串所在行

2、使用pandas组件,对文件进行排序。

3、命令行执行数据获取及排序,写入文件;

以下是完整代码:

#coding:utf-8
import re
import argparse
import pandas as pd
parser = argparse.ArgumentParser(description='manual to this script')
parser.add_argument('--ip', type=str, default = None)
parser.add_argument('--type', type=str, default=None)
args = parser.parse_args()
filterStr = args.ip + " " + args.type
f1=file('perf.csv','r')
perfdata=f1.readlines()
f1.close()
results = []
f2 = open('filter.csv', 'w')
f2.writelines(perfdata[0])
for i in perfdata:
    n = re.findall(filterStr, i)
    if n:
        f2.writelines(i)
f2.close()
df = pd.read_csv('filter.csv')
df = df.sort_values('elapsed',ascending = False)
df.to_csv('filterOrder.csv',index = False)

实例扩展:

Python对csv排序

#/usr/bin/evn python
# -*- coding: utf-8 -*-
import sys
from operator import itemgetter

# input_file = open(sys.argv[1])
input_file = open("D:\\tmp\\a.csv")
output_file = open("D:\\tmp\\asorted.csv","w")

table = []

for line in input_file:
  col = line.split('|') 
  col[0] = col[0].strip()
  col[1] = int(col[1])
  col[2] = int(col[2]) 
  col[3] = int(col[3].strip())
  table.append(col) #嵌套列表table[[8,8][*,*],...]

table_sorted = sorted(table, key=itemgetter(1,2),reverse=True)#先后按列索引1,2排序,降序排列

output_file.write('header' + '\n')
for row in table_sorted:          #遍历读取排序后的嵌套列表
  row = [str(x) for x in row]       #转换为字符串格式,好写入文本
  output_file.write("\t".join(row) + '\n')
  

input_file.close()
output_file.close()

以上就是用python给csv里的数据排序的具体代码的详细内容,更多关于用python给csv里的数据如何排序的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python实现bitmap数据结构详解
Feb 17 Python
Python的迭代器和生成器
Jul 29 Python
Django实现一对多表模型的跨表查询方法
Dec 18 Python
Python从列表推导到zip()函数的5种技巧总结
Oct 23 Python
python 比较2张图片的相似度的方法示例
Dec 18 Python
tensorflow通过模型文件,使用tensorboard查看其模型图Graph方式
Jan 23 Python
Python爬虫爬取百度搜索内容代码实例
Jun 05 Python
Python -m参数原理及使用方法解析
Aug 21 Python
利用python绘制中国地图(含省界、河流等)
Sep 21 Python
Django windows使用Apache实现部署流程解析
Oct 12 Python
python各种excel写入方式的速度对比
Nov 10 Python
Python matplotlib绘制雷达图
Apr 13 Python
python如何删除列为空的行
Jul 17 #Python
Python操作Elasticsearch处理timeout超时
Jul 17 #Python
python设置表格边框的具体方法
Jul 17 #Python
六种酷炫Python运行进度条效果的实现代码
Jul 17 #Python
idea2020手动安装python插件的实现方法
Jul 17 #Python
Python调用百度OCR实现图片文字识别的示例代码
Jul 17 #Python
python实现数字炸弹游戏
Jul 17 #Python
You might like
Drupal7连接多个数据库及常见问题解决
2014/03/02 PHP
thinkphp特殊标签用法概述
2014/11/24 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
2017/07/03 PHP
Javascript - HTML的request类
2006/07/15 Javascript
JavaScript通过元素的ID和name设置样式
2014/07/08 Javascript
jQuery实现单击和鼠标感应事件
2015/02/01 Javascript
JavaScript将字符串转换为整数的方法
2015/04/14 Javascript
jQuery点击按钮弹出遮罩层且内容居中特效
2015/12/14 Javascript
JavaScript+CSS无限极分类效果完整实现方法
2015/12/22 Javascript
Javascript设计模式之观察者模式(推荐)
2016/03/29 Javascript
JavaScript实现复制内容到粘贴板代码
2016/03/31 Javascript
jQuery代码实现图片墙自动+手动淡入淡出切换效果
2016/05/09 Javascript
AngularJs Scope详解及示例代码
2016/09/01 Javascript
微信小程序  生命周期详解
2016/10/27 Javascript
详解webpack+vue-cli项目打包技巧
2017/06/17 Javascript
对vue.js中this.$emit的深入理解
2018/02/23 Javascript
php中and 和 &&出坑指南
2018/07/13 Javascript
vue js秒转天数小时分钟秒的实例代码
2018/08/08 Javascript
layui使用form表单实现post请求页面跳转的方法
2019/09/14 Javascript
[01:52]2020年DOTA2 TI10夏季活动预告片
2020/07/15 DOTA
[00:59]DOTA2背景故事第二期之四大基本法则
2020/07/07 DOTA
解决python升级引起的pip执行错误的问题
2018/06/12 Python
浅谈Python traceback的优雅处理
2018/08/31 Python
python 2.7 检测一个网页是否能正常访问的方法
2018/12/26 Python
Python3实现的回文数判断及罗马数字转整数算法示例
2019/03/27 Python
python3.8与pyinstaller冲突问题的快速解决方法
2020/01/16 Python
python 解决pycharm运行py文件只有unittest选项的问题
2020/09/01 Python
HTML5实现桌面通知 提示功能
2017/10/11 HTML / CSS
澳大利亚时尚前卫设计师珠宝在线:Amber Sceats
2017/10/04 全球购物
单位工作证明范文
2014/09/14 职场文书
2014年法院工作总结
2014/11/24 职场文书
先进教师事迹材料
2014/12/16 职场文书
运动会通讯稿600字
2015/07/20 职场文书
2016学校先进集体事迹材料
2016/02/29 职场文书
七年级作文(600字3篇)
2019/09/24 职场文书
Mysql外键约束的创建与删除的使用
2022/03/03 MySQL