我遇到了一个我想要解决的问题。我的目标是导入一个包含足球队名称的文件,然后输入胜负数,然后如果一支球队的平均值大于.500,那么我必须写出那支球队的名字,并且平均为一个新文件。然后我必须将.500以下的团队写成一个单独的文件。到目前为止,我有我的代码,以便它读取文件的每一行,但我无法弄清楚如何分析每行代码。我真的只是在寻找我现在可以获得的任何建议,我们将不胜感激。
scores = open("fbscores.txt",'r')
eachline = scores.readline()
while eachline != "":
print(eachline)
eachline = scores.readline()
scores.close()
答案 0 :(得分:0)
您很可能最终会使用split方法,该方法每次遇到某个字符时都会将字符串分成一个列表元素。在这里阅读更多http://www.pythonforbeginners.com/dictionary/python-split。
答案 1 :(得分:0)
答案 2 :(得分:0)
给出文件的示例行,如下所示:
import pandas as pd
df = pd.read_csv('file.csv')
print(df)
然后一些代码可能如下所示:
Cowboys 4 1
要查找具有x次胜负的球队的平均值,请执行以下操作:
line = scores.readline().split()
teamName = line[0]
wins = int(line[1])
losses = int(line[2])
if wins > losses:
print(teamName + "'s record is over .500!")
goodTeams.write(line)
goodTeams.write() #make a new line
else:
print(teamName + "'s record is <= .500.")
badTeams.write(line)
badTeams.write()
给出:
"%0.3f" % (x/(x+y))
答案 3 :(得分:0)
如果您从输入中发布一些行,那将非常有用。 根据您的描述,我假设您输入中的每一行都有以下布局:
[NAME] X Y
其中,NAME
是球队名称,X
是胜利数,Y
,输球数量。
你可以简单地用任何分隔符(在这个例子中是&#39;空格&#39;)分割线,
eachline = eachline.split()
如果有逗号分隔符,那么你执行eachline = eachline.split(',')
等等,你就明白了。
然后每行将存储以下结构的列表['NAME', X, Y]
然后,您可以访问X
和Y
以使用eachline[0]
和eachline[1]
分别对其进行平均。