如何从您打开的csv文件中对infortmation进行排序

时间:2016-11-24 21:10:14

标签: python csv

我写了一个代码,打开包含曲目,艺术家,专辑的文件,其中包含以下风格的“计算机爱情”,“Kraftwerk”,“计算机世界”,“Paranoid Android”。我需要组织它们并按照以下方式制作包含曲目信息的列表

 TRACK ARTIST ALBUM
Paranoid Android Radiohead OK Computer

(例如)

这是我到目前为止提出的代码:

def display_playlist( filename ):
    lines = []
    for line in f:
       lines.append(line)
    return lines 

with open('geek-music.csv', 'r') as f:
    contents = display_playlist(f)
print(contents)

我如何组织它们

1 个答案:

答案 0 :(得分:0)

您可以采用的一种方法是使用Pandas数据帧。一些示例代码将是:

将数据读入pandas,假设它没有标题。

import pandas as pd

df = pd.read_csv('geek-music.csv', header=None, names=['track','artist','album'])

现在您有一个数据帧表示,您可以根据需要进行操作以进行排序(通过使用sort_values,例如按轨道排序:

sorted_df = df.sort_values('track', ascending=True)

我不确定你的最终目标是什么 - 在屏幕上打印或写入文件?如果要使用空格分隔变量写入文件,可以执行以下操作:

sorted_df.to_csv('output', sep=" ")

如果你想用空间分隔符在屏幕上打印它,也许你可以使用它。

for row in sorted_df.iterrows():
    print "{} {} {}".format(row['track'], row['artist'], row['album'])

注意,未经测试的代码可能包含一些语法错误!

相关问题