python同时读取数据库文件和电脑文件夹文件

python同时读取数据库文件和电脑文件夹文件,第1张

python同时读取数据文件和电脑文件夹文件

可以使用python的os模块和sqlite3模块来实现,具体实现步骤如下:

1 首先,使用python的os模块来获取电脑文件夹中的文件列表,如果文件夹中有子文件夹,可以使用oswalk()函数来获取文件夹中的文件列表;

2 然后,使用sqlite3模块来连接数据库文件,并使用sql语句来查询数据库中的数据;

3 最后,将查询出来的数据和文件夹中的文件列表进行合并,得到最终的数据。

python读取文件内容的方法:

一最方便的方法是一次性读取文件中的所有内容并放置到一个大字符串中:

all_the_text = open('thefiletxt')read( )

# 文本文件中的所有文本

all_the_data = open('abinfile','rb')read( )

# 二进制文件中的所有数据

为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成 *** 作之后可以迅速关闭文件,防止一些无用的文件对象占用内存。举个例子,对文本文件读取:

file_object = open('thefiletxt')

try:

all_the_text = file_objectread( )

finally:

file_objectclose( )

不一定要在这里用Try/finally语句,但是用了效果更好,因为它可以保证文件对象被关闭,即使在读取中发生了严重错误。

二最简单、最快,也最具Python风格的方法是逐行读取文本文件内容,并将读取的数据放置到一个字符串列表中:

list_of_all_the_lines = file_objectreadlines( )

这样读出的每行文本末尾都带有"\n"符号;如果你不想这样,还有另一个替代的办法,比如:

list_of_all_the_lines = file_objectread( )splitlines( )

list_of_all_the_lines = file_objectread( )split('\n')

list_of_all_the_lines = [Lrstrip('\n') for L in file_object]

最简单最快的逐行处理文本文件的方法是,用一个简单的for循环语句:

for line in file_object:

process line

这种方法同样会在每行末尾留下"\n"符号;可以在for循环的主体部分加一句:

lineline = linerstrip('\n')

或者,你想去除每行的末尾的空白符(不只是'\n'\),常见的办法是:

lineline = linerstrip( )

01

去重

我们使用Pandas库的drop_duplicates(subset=None, keep=‘first’, inplace=False)功能来对Excel文件中的重复项进行删除。

其中,subset参数代表指定列标记,默认当每一条行记录完全相同时,才会认定为重复行;keep=‘’有‘first’、‘last’和‘False’,意思是删除重复行时,保留first还是last还是全部删除,默认参数是‘first’;inplace=‘’有True和Flase,意思是直接替换还是保留副本,默认值是Flase。

读取Excel

import pandas as pd

df = pdread_excel('全部xlsx')

选中列去重

dfdrop_duplicates(['用户名称'])

其中第2、3行的用户名称与第0、1行重复,所以被删除。

03

保存最后一个重复数据

dfdrop_duplicates(['用户名称'],keep='last')

04

保存Excel

dfto_excel('去重后xlsx')

02

批量获取Excel文件

在上面我们已经学会如何对单个Excel文件去重了,但是在读取文件名的时候,我们还是需要手动输入的,如果文件很多的话,我们要一个一个的输入,这不仅麻烦,而且也不符合自动化办公的名头。所以,我们就需要想办法取得该目录下的所有Excel文件。

这里我们用的是Pathlib库,取得该目录下所有的xlsx格式文件。

path = 'K:\自动化办公'

可以使用Python的cx_Oracle模块来实现:

```

import cx_Oracle

# 连接数据库

conn = cx_Oracleconnect('username/password@host:port/sid')

# 创建游标

cursor = conncursor()

# 打开sql文件

f = open('sql_filesql', 'r')

# 读取sql文件

sql_file = fread()

# 执行sql文件

cursorexecute(sql_file)

# 关闭游标

cursorclose()

# 关闭数据库连接

connclose()

```

本文实例为大家分享了Python读取MySQL数据库表数据的具体代码,供大家参考,具体内容如下

环境:Python 36 ,Window 64bit

目的:从MySQL数据库读取目标表数据,并处理

代码:

# -- coding: utf-8 --

import pandas as pd

import pymysql

## 加上字符集参数,防止中文乱码

dbconn=pymysqlconnect(

host="",

database="kimbo",

user="kimbo_test",

password="",

port=3306,

charset='utf8'

)

#sql语句

sqlcmd="select col_name,col_type,col_desc from itf_datadic_dtl_d limit 10"

#利用pandas 模块导入mysql数据

a=pdread_sql(sqlcmd,dbconn)

#取前5行数据

b=ahead()

print(b)

# 读取csv数据

# pdread_csv()

# 读取excel数据

#pdread_excel()

# 读取txt数据

#pdread_table()

结果如图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多

首先你要知道如何在视图里渲染模板,另外得要看你用的是什么数据库,以及你是否使用django的orm。

拿mysql为例,如果你只需要从现有数据库中查询数据并显示,那么使用MySQLdb模块即可,查询出来的数据和模板进行渲染,之后返回渲染后的模板对象即可。

以上就是关于python同时读取数据库文件和电脑文件夹文件全部的内容,包括:python同时读取数据库文件和电脑文件夹文件、python可以读取数据库里文档吗、python如何批量对每一个excel文件进行去重等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10189673.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存