python读入数据总结大全

编程入门 行业动态 更新时间:2024-10-09 20:29:03

python读入<a href=https://www.elefans.com/category/jswz/34/1771445.html style=数据总结大全"/>

python读入数据总结大全

目录

碎碎念

1、使用python内置函数open

1.1 对于txt

1.1.1 按行读入,每行作为列表的一个元素


碎碎念

读入数据,都是最基本的东西了,但是我发现老是不会用,而且都没有对各种数据类型进行一个总结,以至于每次读入数据,都需要再去网上搜集代码,浪费时间。因此作为一个初学python的人,我决定自己给自己总结一篇读入数据的文章。

1、使用python内置函数open

1.1 对于txt

一般来说,txt格式的数据,都会有很多行,每一行存储一个数据。

比如我的这个数据:

人生如逆旅
我亦是行人
人生何处不相逢
何事秋风悲画扇

我经常需要的格式一般都是列表,每行作为列表的一个元素存在。

1.1.1 按行读入,每行作为列表的一个元素

通过f.read().splitness(),首先把数据整体读入,然后再拆分。

通过以下代码可以将数据读入,存到一个列表里,并且每一行作为列表的一个元素。

with open('importdata.txt', 'r', encoding='utf-8')as f:raw_data = f.read().splitlines()
print(raw_data)

结果如下所示:

['人生如逆旅', '我亦是行人', '人生何处不相逢', '何事秋风悲画扇']

通过f.readlines()读入,这种方式的重点在于怎么去除换行符'\n'.

首先如果直接使用.readlines()的方式读入:

with open('importdata.txt', 'r', encoding='utf-8')as f:raw_data_1 = f.readlines()
print(raw_data_1)

结果就是带\n的:

['人生如逆旅\n', '我亦是行人\n', '人生何处不相逢\n', '何事秋风悲画扇']

我们并不需要换行符\n,如何去掉呢?可以通过str.replace()和str.strip()的方式去掉,如以下代码所示:

with open('importdata.txt', 'r', encoding='utf-8')as f:raw_data_1 = [word.strip('\n') for word in f.readlines()]
print(raw_data_1)

with open('importdata.txt', 'r', encoding='utf-8')as f:raw_data_2 = [word.replace('\n', '') for word in f.readlines()]
print(raw_data_2)

这两个方法都可以去除掉'\n'。

还有一个重磅方法,就是先依然用.read()方法全部读入,然后对文本进行整体处理,比如全部小写,去除标点符号等,再使用.split方法用换行符把它们转换为列表。

文本内容:

I like China.
Whatever your past has been, you have a spotless future.
Life is a load of running, it is necessary to constantly in each choose a fork in the road.
Don't fear you forsake, just afraid of losing you.

with open('importdata.txt', 'r', encoding='utf-8')as f:data = f.read().lower()
for ch in '!"#$%&()*+,-./:;<=>?@[\\]^_‘{|}~':data = data.replace(ch, " ")
raw_data = data.split('\n')
print(raw_data)

结果就是这样的,也是一个列表,列表里的每个元素就是txt文件里的每行

['i like china ', 'whatever your past has been  you have a spotless future ', 'life is a load of running  it is necessary to constantly in each choose a fork in the road ', "don't fear you forsake  just afraid of losing you "]

那为什么要这么做呢?因为我发现如果我们要对文本进行大小写,以及删除标点符号等处理的话,都要使用字符串的方法。因此如果我们使用readlines()方法直接将文件存储为列表的话,又得通过.join等方式转换为字符串,完了再转换为列表,这岂不是来回折腾嘛。

因此我觉得可以先以字符串的形式完成初步处理,再通过.split()方法切割为列表。

那么.strip()和.replace()具体什么意思呢?明天写......

更多推荐

python读入数据总结大全

本文发布于:2024-03-10 19:19:48,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1728827.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数据   大全   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!