遍历熊猫中的特定列

时间:2020-05-28 17:02:03

标签: python pandas

我有一个需要在python脚本中处理的CSV文件。我选择使用pandas模块。

我的CSV文件如下:

Name,Private IP
bastion001,10.238.2.166
logicmonitor001,10.238.2.52
logicmonitor002,10.238.2.53

我想遍历Name列。

我正在这样读取文件:

hosts_list = os.path.join('..', '..', 'source_files', 'aws_hosts_list', 'aws_hosts_list.csv')
fields = ['Name']
df = pd.read_csv(hosts_list, skipinitialspace=True, usecols=fields)

当我打印整个数据框时,我看到以下内容:

print(f"This is the DF: \n{df}")

This is the DF:
                      Name
0               bastion001
1          logicmonitor001
2          logicmonitor002

但是当我尝试遍历输出时,这就是我看到的:

for i,j in df.iterrows():
    print(f"{i} {j}")

0 Name    bastion001
Name: 0, dtype: object
1 Name    logicmonitor001
Name: 1, dtype: object
2 Name    logicmonitor02

如何仅打印Name列中的名称,以便获得如下所示的列表:

bastion001
logicmonitor001
logicmonitor0002

2 个答案:

答案 0 :(得分:1)

如果您只想要列表,可以执行以下操作:

list_names = df['Name'].tolist()
print(list_names)

['bastion001', 'logicmonitor001', 'logicmonitor002']

答案 1 :(得分:1)

尝试一下:

print(list(df['Name']))

输出:

['bastion001', 'logicmonitor001', 'logicmonitor002']

如果您希望它们每行一个,请尝试以下操作:

for val in list(df['Name']):
    print(val)

输出:

bastion001
logicmonitor001
logicmonitor002