【问题标题】:Converting list of strings to integers PYTHON将字符串列表转换为整数 PYTHON
【发布时间】:2019-01-28 13:21:11
【问题描述】:
import csv

with open('Football_data.csv') as csvfile:
readCSV = csv.reader(csvfile, delimiter=',')

dates = []
homeTeam = []
awayTeam = []
fullTimeHomeGoals = []
fullTimeAwayGoals = []
fullTimeResult = []


for row in readCSV:
    #ignore row[0]
    date = row[1]
    home = row[2]
    away = row[3]
    FTHG = row[4]
    FTAG = row[5]
    FTR = row[6]

    dates.append(date)
    homeTeam.append(home)
    awayTeam.append(away)
    fullTimeHomeGoals.append(FTHG)
    fullTimeAwayGoals.append(FTAG)
    fullTimeResult.append(FTR)



    print(date, home,FTHG, FTAG, away)

我正在尝试将 CSV 文件中的数据转换为整数。

我试过了

FTHG = int(row[4])
FTAG = int(row[5])

但是得到以下错误:

Traceback (most recent call last):
File "C:/Users/*****/PycharmProjects/untitled/first.py", line 19, in 
<module>
FTHG = int(row[4])
ValueError: invalid literal for int() with base 10: 'FTHG'

为了对 CSV 文件中的足球数据进行一些分析, 代表进球数的值需要存储为整数。 由于 CSV 文件中的所有数据都是我需要转换的字符串数据。 我使用的语法确实在我的循环之外工作。

【问题讨论】:

  • 看起来您正在尝试转换标题行。在循环前使用next(readCSV) 跳过第一行。
  • 当然!谢谢你:)

标签: python string list csv integer


【解决方案1】:

试试看:

import csv

with open('Football_data.csv') as csvfile:
    readCSV = csv.reader(csvfile, delimiter=',')

    ################ This is the header of each columns
    next(readCSV) ## This line reads it so it is not read
    ################ when iterating in the for loop

# ... #

【讨论】:

  • 对不起...我有 3 行评论,还不够。无论如何,如果您需要更多信息,请告诉我。
猜你喜欢
  • 2017-07-30
  • 1970-01-01
  • 2015-01-14
  • 2021-06-18
  • 2023-03-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多