(Python 3.2)Python上的文件处理?

(Python 3.2)Python上的文件处理?,python,python-3.x,Python,Python 3.x,我是python新手。这里是TXT文件中的文本行,作业要求我在图形窗口中打印它们 student1 lastname 55 student4 lastname 55 student9 lastname 55 student10 lastname 55 student12 lastname 55 student15 lastname 55 from graphics import * win = GraphWin('', 600,500) 因此,首先我打开文件,进入这个循环,并将它们打印

我是python新手。这里是TXT文件中的文本行,作业要求我在图形窗口中打印它们

student1 lastname 55
student4 lastname 55
student9 lastname 55
student10 lastname 55
student12 lastname 55
student15 lastname 55
from graphics import *   
win = GraphWin('', 600,500)
因此,首先我打开文件,进入这个循环,并将它们打印在python shell上

file = open("input.txt","r")
    for line in file:
        print(line)
我的图形窗口的代码

student1 lastname 55
student4 lastname 55
student9 lastname 55
student10 lastname 55
student12 lastname 55
student15 lastname 55
from graphics import *   
win = GraphWin('', 600,500)

现在,如何在我刚刚创建的图形窗口上打印这些文本行?

您可以使用基本的列表操作,如

line=[line.strip()用于打开的行(“file.txt”)]

一旦您获得该列表,就可以访问窗口内
for
循环中的每个元素


我建议你通读这篇

你做得很好,但为了更好地理解,你应该这样做

做你想做的事情的更好的方法是

from graphics import *
win = GraphWin('', 600,500)
text_x, text_y = 200, 50
with open("input.txt","r") as file:
    for line in file:
        print(line)
        label = Text(Point(text_x, text_y), line)
        label.draw(win)
        text_y += 50 # distance between 2 lines

他做这件事的方法实际上更好。更好的python方法是使用
with
语句。另外,您没有回答实际问题。我认为您希望
test\y
递增,因为它是linesOops。但除此之外,代码正确吗?我对
graphics
不太熟悉。我想是的,现在可以了。我尝试了u方法,但它只打印了窗口上的最后一行文件。我尝试了这个方法&它工作正常(至少可以打印这些行)。请检查您的密码。