目录
- txt,
- csv
- excel
- xlwings
- pandas
- openpyxl,xlwt
- database
- sqlite
- mysql
- postgresql
- 批量读写
- 读取文件夹内的内容
- 读取最后一行内容
1.txt
with open 数据导入导出
-
导入模块
#导入模块 import pandas as pd from sqlalchemy import create_engine #创建数据库引擎 -
1. 读写txt,csv
读取csv,txt
# 读取csv file_path =r'' pd.read_csv(file_path)输出csv
[[输出结果到csv]] df.to_csv('F:/xx/Inbox/xls2.csv',sep=',') [[输出结果到csv,2]] In [5]: df.to_csv("e:\student01.csv",sep=",",columns=['姓名','班级'],index=True) In [6]: df = pd.read_csv('e:\student01.csv') ’‘’ sep为分隔符 ‘’‘输出到txt
[[输出结果到txt]] df.to_csv('F:/xx/Inbox/xls2.txt',sep=',') -
2.读写excel
读取excel
# 读取excel file_path =r'F:\XX\xx.xlsx' [[读取excel]] coln = ['货号','有效数量','有效金额'] xls1 = pd.read_excel(file_path,sheet_name='整理明细表',usecols =coln,header=2) """ read_excel常用参数: sheet_name:表的名称 header:从第几行开始,0开始 usecols:读取哪些列 eg. usecols =["序号","货号","品名规格"] """输出excel
[[输出为excel]] df.to_excel(filepath,'sheetname')输出到多个使用pd.Excelwriter
file_path=r'F:\INDEX\x1.xlsx' # excel文件地址 with pd.ExcelWriter(file_path,mode='a',engine=openpyxl) as writer: # 在已存在的表后添加sheet df1.to_excel(writer,sheet_name='df1') df2.to_excel(writer,sheet_name='df2') # mode a :追加方式,在原文件后面添加表 # mode w :写方式,会覆盖原文件内容 -
3.读写sqlite
读取sqlite
import pandas as pd from sqlalchemy import create_engine eg = create_engine('sqlite:///F:/XX/xx2022.db') sql =""" select * from table_name """ df = pd.read_sql(sql,eg)输出到sqlite
[[输出结果到sqlite]] df.to_sql('res',eg,if_exists='replace') # 'replace' 可替换 -
4.读写mysql
# 导入模块 import pandas as pd from sqlalchemy import create_engine import pymysql #数据库信息 host = 'rm-bp1eo2i7tji1x24z61o.mysql.rds.aliyuncs.com' port = '3306' db = 'quant2022' user = 'root' password = 'password' db_url = f'mysql+pymysql://{user}:{password}@{host}:{port}/{db}?charset=utf8' engine = create_engine(db_url) #数据库引擎 #读取mysql sql1 =""" select * from pzh """ df1= pd.read_sql_query(sql1,engine) # 写入mysql pzh.to_sql(name='pzh',con=engine,if_exists='replace') -
5. 读写postgresql
-
5. 使用sqlite3,MySQLdb读写数据库sqlite,mysql,
-
6. 使用with open语句
c='hello world!' txt_path=r'F:\inbox\t1.txt' with open(txt_path,'w',encoding='utf-8') as f: f.write(c) f.close -
7. 处理模块
import pandas as pd from sqlalchemy import create_engine import pymysql def con_ali(): host = 'rm-bp1eo2i7tji1x24z61o.mysql.rds.aliyuncs.com' port = '3306' db = 'xx2022' user = 'root' password = 'Jing-1332' db_url=f'mysql+pymysql://{user}:{password}@{host}:{port}/{db}?charset=utf8' return create_engine(db_url) def con_sqlite(): return create_engine('sqlite:///F:/XX/Database/xx2022.db') def load_excel(file): df=pd.read_excel(file) return df df1 = pd.read_excel(f1,sheet_name='Sheet1') # read sqlite sql =""" select * from pzh """ # read mysql sql =""" select * from pzh """ df= pd.read_sql_query(sql,con_ali()) #%% write to alimysql df.to_sql('tablename',con,if_exists='replace')