温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python glob与数据库文件操作结合实现动态文件筛选

发布时间:2024-07-25 17:56:04 来源:亿速云 阅读:84 作者:小樊 栏目:编程语言
import glob
import sqlite3

# 连接数据库
conn = sqlite3.connect('file_info.db')
c = conn.cursor()

# 创建文件信息表
c.execute('''CREATE TABLE IF NOT EXISTS files
             (id INTEGER PRIMARY KEY, name TEXT, path TEXT)''')

# 获取当前目录下所有文件路径
file_paths = glob.glob('*')

# 将文件信息插入数据库
for file_path in file_paths:
    file_name = file_path.split('/')[-1]
    c.execute("INSERT INTO files (name, path) VALUES (?, ?)", (file_name, file_path))

# 提交更改
conn.commit()

# 查询文件信息
file_type = input("请输入文件类型(如txt、pdf等):")
c.execute("SELECT * FROM files WHERE name LIKE ?", ('%.' + file_type,))
files = c.fetchall()

# 打印筛选结果
for file in files:
    print(file[1], file[2])

# 关闭数据库连接
conn.close()

在这个示例中,我们首先使用glob模块获取当前目录下所有文件的路径,并将文件名和路径信息插入到SQLite数据库中。然后用户可以输入文件类型进行筛选,程序会查询数据库得到符合条件的文件信息并打印出来。

需要注意的是,这里的文件筛选是基于文件名后缀来进行的,比如用户输入txt,程序会查询文件名中包含.txt的文件。您可以根据实际需求调整文件筛选条件。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI