PySimpleGUI 如何获取一个文件夹里面所有文件的路径
时间: 2023-02-08 08:50:38 浏览: 314
PySimpleGUI不提供获取文件夹中所有文件路径的直接方法。可以使用Python标准库中的os.walk()函数或者glob.glob()函数来获取文件夹中所有文件的路径。
例如:
``` python
import os
path = '/path/to/folder'
for root, dirs, files in os.walk(path):
for file in files:
print(os.path.join(root, file))
```
或者:
``` python
import glob
path = '/path/to/folder/*'
files = glob.glob(path)
for file in files:
print(file)
```
这样会得到文件夹里所有文件的绝对路径,如果只需要文件名可以使用 os.path.basename(file)。
相关问题
pysimplegui输出到自定义文件夹
您可以使用Python内置的`os`模块来创建一个自定义文件夹,并在其中保存输出文件。下面是一个使用PySimpleGUI和os模块的示例代码,可以输出文本到指定的自定义文件夹:
```python
import os
import PySimpleGUI as sg
# 创建GUI窗口
layout = [[sg.InputText(key='-INPUT-')],
[sg.Button('保存到文件')]]
window = sg.Window('保存到自定义文件夹', layout)
while True:
event, values = window.read()
if event == sg.WIN_CLOSED:
break
if event == '保存到文件':
# 获取用户输入的文本
text = values['-INPUT-']
# 创建一个名为"my_folder"的自定义文件夹(如果不存在)
folder_path = './my_folder'
if not os.path.exists(folder_path):
os.makedirs(folder_path)
# 将文本保存到自定义文件夹中的"output.txt"文件
file_path = os.path.join(folder_path, 'output.txt')
with open(file_path, 'w') as f:
f.write(text)
# 提示用户文件已保存
sg.popup('文件已保存!')
window.close()
```
在这个例子中,当用户单击"保存到文件"按钮时,程序将获取用户输入的文本,并将其保存到名为"my_folder"的自定义文件夹中的"output.txt"文件。如果该文件夹不存在,则会在程序运行时自动创建。最后,程序会通过弹出窗口提示用户文件已保存。
PySimpleGUI 选择多个文件
您可以使用PySimpleGUI来选择多个文件。下面是一个简单的示例代码:
```python
import PySimpleGUI as sg
layout = [
[sg.Text('选择文件')],
[sg.Input(key='-FILES-', enable_events=True), sg.FilesBrowse()],
[sg.Button('确定')]
]
window = sg.Window('选择多个文件', layout)
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
if event == '确定':
selected_files = values['-FILES-'].split(';')
print('选择的文件:', selected_files)
window.close()
```
这个示例创建了一个窗口,包含一个文件路径输入框和一个浏览按钮。当用户点击浏览按钮时,他们可以选择一个或多个文件。选择的文件路径将显示在输入框中,点击确定按钮后,程序将打印所选文件的路径。
注意:在Windows操作系统上,多个文件的路径将使用分号(;)进行分隔。在其他操作系统上,可能会使用不同的分隔符,请根据您的操作系统进行适当的处理。