热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

从Tkinter中的askopenfilename函数获取文件路径

如何解决《从Tkinter中的askopenfilename函数获取文件路径》经验,为你挑选了1个好方法。

我正在编写一个脚本来自动将一个文件中的特定文本集更改为另一个文件中具有不同名称的特定集.

我想使用该askopenfilename函数获取文件的名称,但是当我尝试打印文件名时,它返回:

<_io.TextIOWrapper name='/home/rest/of/file/path/that/I/actually/need.txt' mode='w' encoding='ANSI_X3.4-1968'>

我只需要文件名,因为<_io.TextIOWrapper ...>它不是子脚本.

任何删除无关位的建议?



1> nbro..:

askopenfilename() 如果没有选择文件,则返回所选文件的路径或空字符串:

from tkinter import filedialog as fd

filename = fd.askopenfilename()
print(len(filename))

要打开选中的文件askopenfilename,您可以简单地使用普通的Python构造和函数,例如open函数:

if filename:
    with open(filename) as file:
        return file.read()

我认为您正在使用askopenfile,它会打开所选文件并返回一个_io.TextIOWrapper对象,或者None如果您按下取消按钮.

如果你想坚持askopenfile让刚刚打开的文件的文件路径,你可以简单地访问叫物业name的中_io.TextIOWrapper返回的对象:

file = fd.askopenfile()
if file: 
    print(file.name)

如果您想了解有关filedialog(或tkFileDialogPython 2)模块下定义的所有函数的更多信息,可以阅读本文.


推荐阅读
author-avatar
喂╲偶稀飯妳
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有