如何从CSV文件的行中获取特定变量?

2024-04-20 13:03:28 发布

您现在位置:Python中文网/ 问答频道 /正文

Imported file looks like this

import csv

fields = [
    "RowNum",
    "PlayerNum",
    "Name",
    "Position",
    "Age",
    "ThrowHand",
    "BatHand",
    "Height",
    "Weight",
    "Birthdate",
    "RookieYear"
]

with open("astroRoster.txt") as astroFiles:
    astroRoster = csv.DictReader(astroFiles, fields)
    print("\t Player names and jersey numbers:")
    for element in astroRoster:
        print(f'{element["Name"]}: {element["PlayerNum"]}')

with open("astroRoster.txt") as astroFiles:
    astroRoster = csv.DictReader(astroFiles, fields)
    print("\t Tallest player and height:")
    for element in astroRoster:
        print(f'{element["Name"][17]}: {element["Height"][17]}') #this is where i have no idea what i'm doing

我试图打印出最高的球员和他们的高度从我的.txt文件,一张照片是附加的文件。但我不确定如何抓住具体元素。我希望能够打印出他们的平均体重、年龄和其他具体情况,但我不知道/理解如何打印。我是一个超级初学者,所以很抱歉,如果这是一个愚蠢的问题,我就是想不出来:(


Tags: csvnametxtfieldsaswithelementopen
1条回答
网友
1楼 · 发布于 2024-04-20 13:03:28

对于表格数据,pandas是一个很棒的工具! 打印您可以使用的数据,如下所示(未测试)。您需要修改它以保存到文本文件

import pandas as pd

df = pd.read_csv("yourcsv",names=["RowNum","PlayerNum","Name","Position","Age","ThrowHand","BatHand","Height","Weight","Birthdate","RookieYear"])
for row in df.rows:
   print row['Name'], row['PlayerNum'], row['Height']

相关问题 更多 >