python - 在不使用 panda 或 csv 模块 PYTHON 的情况下过滤 csv 文件
问题描述
在不使用任何模块(panda、csv 等)的情况下,我需要过滤这个 csv 文件(https://data.world/prasert/rotten-tomatoes-top-movies-by-genre/workspace/file?filename=rotten_tomatoes_top_movies_2019-01 -15.csv),我想只过滤动画类型的电影并删除其他电影。
我已经使用 open、split 和 for 循环来读取数据,但我正在努力将电影过滤成流派。
我创建了一个名为流派的列表,然后将其附加到流派.append(line.split(",") [4]),但这仅提供流派列中的流派列表,而不是给我每部电影的信息在特定的流派中。
我知道在没有模块的情况下尝试这个是很疯狂的(这是为了学校),但是没有它们甚至可以做到这一点吗?
提前致谢。
解决方案
尝试这个。
f = open("file_name", "r",encoding="utf-8")
new_list=[]
header=0
for line in f.readlines():
#if header is present in the file
if header==0:
new_list.append(line)
header=1
continue
#add Genre Name to filter
if line.split(',')[4]=='genre_name':
new_list.append(line)
#writing filtered list to output file.
out_flie=open('output.txt','w',encoding="utf-8")
for element in new_list:
out_flie.write(element)
out_flie.write('\n')
out_flie.close()
推荐阅读
- c# - 仅在更改提示中隐藏“无偏好”按钮
- python - 有没有办法根据之前出现的 x 列中的值过滤数据框?
- r - 将字符转化为相应的定语
- php - Ubuntu 服务器能够通过 LDAP 进行连接,但不能通过 LDAPS 进行连接,尽管 LDP 显示 SSL 已启用
- css - reactJS SCSS背景图像不可见
- ionic-framework - 为什么 Instantsearch 声明会导致打字稿错误?
- c# - 在 C# Xamarin Button 中添加 2 个数字不起作用
- android - 自 Android 7+ / Nougat 起如何将图像从 Android 应用程序传递到 Instagram
- azure - 如何在 ARM 模板中引用“部署名称”
- r - 加入两个邻接矩阵并保留值