我想获取.txt文件中每行的最后一个元素和第三个元素

时间:2013-05-03 03:37:42

标签: python python-3.x

这是我的.txt文件包含的内容:

  

ECS10 A 4

     

ECS20 B 3

     

JPN4 C 5

     

PHY9A D 5

这是我的程序,以获取每行的最后一个元素:

f = open("grade_file.txt", "r")

line = f.readlines()

for i in (line):

    print(i[-1:])

出于某种原因,当它打印出每一行时,每行在到达数字之前都有一个额外的空格(最后一行除外)。

所以它在最后打印出一个数字5,因为最后一行没有额外的空格。如何获得计算GPA的最后一个元素和第三个元素?

2 个答案:

答案 0 :(得分:0)

在抓取最后一个元素之前从行中删除空格:

f = open("grade_file.txt", "r")
line = f.readlines()

for i in (line):
    i = i.strip()
    print(i[-1:])

答案 1 :(得分:0)

Humnm这很有趣,因为我没有得到你的结果

 x='PHY9A D 5'
 >>>> x
  'PHY9A D 5'

我个人不明白你怎么能通过读取行​​来获得除字符串之外的任何内容如果我正在编写此代码,我将执行以下操作

my_lines = open(r'c:\myfile.txt').readlines()

sum_of_grades = 0

for number_of_courses, line in enumerate(my_lines):
    course, grade, value_for_gpa = line.split()
    sum_of_grades += int(value_for_gpa)

gpa = sum_of_grades/float(number_of_courses)