+-
python – 使用askopenfilename打开和读取文件
我有以下代码,我试图允许用户打开一个文本文件,一旦用户选择它,我希望代码读取它(这不是一个完成的代码块,只是为了显示什么我以后).

但是,我在使用tkFileDialog.askopenfilename和添加’mode =’rb”或使用如下代码并使用read产生错误时遇到困难.

有没有人知道如何安排这样做,因为我不希望为菜单和列表框等每个项目键入Tkinter.’module’.初学者到Tkinter有点困惑!谢谢您的帮助!

import sys
from Tkinter import *
import tkFileDialog
from tkFileDialog import askopenfilename # Open dialog box

fen1 = Tk()                              # Create window
fen1.title("Optimisation")               #

menu1 = Menu(fen1)

def open():

    filename = askopenfilename(filetypes=[("Text files","*.txt")])
    txt = filename.read()
    print txt
    filename.close()

fen1.mainloop()

显然,我在这里得到的错误是:

AttributeError: 'unicode' object has no attribute 'read'

我不明白如何使用askopen,也能够读取我正在打开的文件.

最佳答案
askopenfilename只返回一个文件名,你想要的是askopenfile,它接受一个mode参数并为你打开文件.
点击查看更多相关文章

转载注明原文:python – 使用askopenfilename打开和读取文件 - 乐贴网