怎么用Python来读取和处理文件后缀?

最近在弄一个项目分析的时候,看到有一个后缀为”.sqlite”的数据文件,由于以前没怎么接触过,就想着怎么用python来打开并进行数据分析与处理,于是稍微研究了一下。

SQLite是一款非常流行的关系型数据库,由于它非常轻盈,因此被大量应用程序采用。

像csv文件一样,SQLite可以将数据存储于单个数据文件,以便方便的分享给其他人员。许多编程语言都支持SQLite数据的处理,python语言也不例外。

sqlite3是python的一个标准库,可以用于处理SQLite数据库。

用sqlite3创建和操作数据库文件

对于数据库的SQL语句,本文会用到最基础的SQL语句,应该不影响阅读。如果想进一步了解,可参考如下网址:

下面,我们来应用salite3模块来创建SQLite数据文件,以及进行数据读写操作。主要的步骤如下:

与数据库建立连接,创建数据库文件(.sqlite文件)

创建游标(cursor)

创建数据表(table)

向数据表中插入数据

查询数据

立即学习“Python免费学习笔记(深入)”;

演示代码如下:

import sqlite3with sqlite3.connect('test_database.sqlite') as con:    c = con.cursor()    c.execute('''CREATE TABLE test_table    (date text, city text, value real)''')for table in c.execute("SELECT name FROM sqlite_master WHERE type='table'"):        print("Table", table[0])    c.execute('''INSERT INTO test_table VALUES    ('2017-6-25', 'bj', 100)''')    c.execute('''INSERT INTO test_table VALUES    ('2017-6-25', 'pydataroad', 150)''')    c.execute("SELECT * FROM test_table")    print(c.fetchall())

登录后复制

Table test_table[('2017-6-25', 'bj', 100.0), ('2017-6-25', 'pydataroad', 150.0)]

登录后复制

关于SQLite数据库中数据的可视化预览,有很多的工具可以实现,我这里使用的是SQLite Studio,是一个免费使用的工具,不需要安装,下载下来就可以使用,有兴趣的同学可以参考下面的链接。

https://sqlitestudio.pl/index.rvt?act=download

数据预览的效果如下:

怎么用Python来读取和处理文件后缀?

怎么用Python来读取和处理文件后缀?

用pandas来读取sqlite数据文件

从上面代码的运行结果可以看出,数据查询的结果是一个由tuple组成的list。python的list数据在进行进一步的数据处理与分析时,可能会不太方便。可以想象一下,假设如果数据库的表格中一共有100万行或者更多数据,从list中循环遍历获取数据,效率会比较低。

这时,我们可以考虑用pandas提供的函数来从SQLite数据库文件中读取相关数据信息,并保存在DataFrame中,方便后续进一步处理。

Pandas提供了两个函数,均可以读取后缀为“.sqlite”数据文件的信息。

read_sql()

read_sql_query()

import pandas as pdwith sqlite3.connect('test_database.sqlite') as con:# read_sql_query和read_sql都能通过SQL语句从数据库文件中获取数据信息df = pd.read_sql_query("SELECT * FROM test_table", con=con)# df = pd.read_sql("SELECT * FROM test_table", con=con)print(df.shape)    print(df.dtypes)    print(df.head())

登录后复制

(2, 3)date      objectcity      objectvalue    float64dtype: object        date        city  value0  2017-6-25          bj  100.01  2017-6-25  pydataroad  150.0

登录后复制

以上就是怎么用Python来读取和处理文件后缀?的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2269205.html

(0)
上一篇 2025年2月27日 11:06:33
下一篇 2025年2月27日 11:06:49

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Python开发–进程、线程、协程详解

    什么是进程(process)? 程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程。程序和进程的区别就在于,程序是指令的集合,它是进程运行的静态描述文本;进程是程序的一次执行活动,属于动态概念…

    2025年2月27日
    100
  • 总结Python编码需要注意的地方

    1、map, filter, reduce1) map(func, input_list)将函数应用到输入列表上的每个元素, 如:input_list = [1, 2, 3, 4, 5] def pow_elem(x):    &#8220…

    编程技术 2025年2月27日
    200
  • Python是怎么操作文件和目录的?

    Python操作文件和目录 读写文件比较简单,有一点特别注意就好了 windows下Python默认打开的文件以gbk解码,而一般我们的文件是utf-8编码的,所以如果文本含有中文,就会出现异常或者乱码。此时手动添加encoding=&#8…

    编程技术 2025年2月27日
    200
  • python-函数式编程实例教程

      函数式编程是使用一系列函数去解决问题,按照一般编程思维,面对问题时我们的思考方式是“怎么干”,而函数函数式编程的思考方式是我要“干什么”。 至于函数式编程的特点暂不总结,我们直接拿例子来体会什么是函数式编程。  lambda表达式(匿名…

    编程技术 2025年2月27日
    200
  • 一种解释型语言–python的介绍

    python是一种解释型语言 python 2 或 3的选择:   python 2.7是2的最新版本 也是最后一个版本,更新支持至2020年 将会停止更新,但是现在正在使用或已经开发完成的公司在继续使用python2 ,所以更新的这个过渡…

    编程技术 2025年2月27日
    200
  • 总结一些Python的编程技巧

    这篇文章主要介绍了给python初学者的一些编程技巧,皆是基于基础的一些编程习惯建议,需要的朋友可以参考下 交换变量 x = 6y = 5 x, y = y, x print x>>> 5print y>>&g…

    编程技术 2025年2月27日
    200
  • Python常用方法和技巧汇总

    这篇文章主要介绍了收藏的一些python常用方法和技巧,本文讲解了逆转字符串的三种方法、遍历字典的四种方法、遍历list的三种方法、字典排序的方法等python常用技巧和方法,需要的朋友可以参考下 1. 逆转字符串的三种方法1.1. 模拟C…

    编程技术 2025年2月27日
    200
  • Python编程JSON格式的转换、else语句的活用和setdefault方法详解

    这篇文章主要介绍了总结python编程中三条常用的技巧,包括json格式的转换、else语句的活用和setdefault方法的使用,需要的朋友可以参考下 在 python 代码中可以看到一些常见的 trick,在这里做一个简单的小结。jso…

    编程技术 2025年2月27日
    200
  • 适合利用Python合并多个装饰器?

    这篇文章主要介绍了python合并多个装饰器小技巧,本文用改写调用函数的方式实现把多个装饰器合并成一行、一个函数来调用,需要的朋友可以参考下 django程序,需要写很多api,每个函数都需要几个装饰器,例如 @csrf_exempt  @…

    编程技术 2025年2月27日
    200
  • Python如何查找子字符串

    这篇文章主要介绍了python字符串中查找子串小技巧,,需要的朋友可以参考下 如果让你写一个程序检查字符串s2中是不是包含有s1。也许你会很直观的写下下面的代码: #determine whether s1 is a substringof…

    编程技术 2025年2月27日
    200

发表回复

登录后才能评论