python文件读写函数总结

1.python读取csv文件

   #!/usr/bin/python
   # -*- coding: UTF-8 -*-
    df  = pd.read_csv(filepath,usecols=['func_name', 'para_value'])
    df_t = df.fillna(value='')//对空字符进行填充
    func=df_t ['func_name']//取func_name列
    para=df_t ['para_value']

2.遍历路径下的文件

def file_name(file_dir):
    file_list=[]
    for files in os.walk(file_dir):
        file_list=files[2]
    return file_list

3.python从数据库中读取数据

import os
import re
import click
import numpy as np
import pandas as pd
import pymysql as psql
import datetime
import threading

time_start = (datetime.date.today()-datetime.timedelta(days=1)).strftime('%Y%m%d')
lock = threading.Lock()
def read_data_from_db(db_ip, db_port, db_user, db_pwd, db_name, sql_str):
    with psql.connect(host=db_ip, port=db_port, user=db_user, passwd=db_pwd, db=db_name, charset='utf8') as conn:        
        lock.acquire()       #获得锁定
        flag = conn.execute(sql_str)
        lock.release()
        # 返回的是元组组成的列表
        data = conn.fetchall()
    return data

sql_str = “SELECT * FROM database WHERE Time >= '” + sdate + “’” + " AND " + “Time <= '” + edate + “’”+“AND Level=’”+level+"’"+“AND FileType=’”+type+ “’”
ip=“10.*.*.*”
columns_Attach = [
“Name”,
“Mail”,
“ID”,
“FileName”,
“FileType”
]
db_90 = read_data_from_db(db_ip=ip, db_port=33, db_user=“root”, db_pwd=“toor”, db_name=“DB_TEST”,sql_str=sql_str)
df_90 = pd.DataFrame(list(db_90),columns=columns_Attach)
df_data = pd.concat([df_90])
IDs = list(df_data[“ID”].values)
Mails=list(df_data[‘Mail1’])

4.python逐行写入csv

#actions是一个字典类型
 DataFrame = pd.DataFrame(actions, index=[num])
 if num == 0:
     DataFrame.to_csv(csvName, header=True)  # index=True, sep=',',
 else:
     DataFrame.to_csv(csvName, mode='a', header=False)
 num+=1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值