Select Python 中所有文件类型的另一种方法
Another Method To Select All File Types In Python
我创建了一个 运行 在 visual studio 代码中完全没问题的脚本,但我现在正试图自动化该脚本,事实证明这有点棘手。我已经将该文件转换为用于自动化的 unix 可执行文件,但是当我单击我的脚本时,我一直收到错误消息。脚本的一部分 select 包含所有 .csv 文件类型并像这样删除它们...
filestodelete = glob.glob('*.csv')[0]
os.remove('/Users/emmanuel/Documents/Selenium/{}'.format(filestodelete))
问题是当终端到达这段代码时,我收到这个错误...
Traceback (most recent call last):
File "/Users/emmanuel/Documents/Selenium/OptionsBotCode.py", line 32, in <module>
filestodelete = glob.glob('*.csv')[0]
IndexError: list index out of range
我差点以为是因为我在VSC里运行代码的时候,代码自动使用了代码所在文件夹的目录。但是,当我 运行 通过 exec 文件访问它时,它不知道要在哪个目录中查找它需要删除的项目,并且它无法获取该目录,因为它读取了这一行(带有没有目录信息)
filestodelete = glob.glob('*.csv')[0]
在阅读这篇文章之前
os.remove('/Users/emmanuel/Documents/Selenium/{}'.format(filestodelete))
我试过通过将目标目录放在 *.csv 之前来指定位置
filestodelete = glob.glob('/Users/emmanuel/Documents/Selenium/*.csv')[0]
os.remove('/Users/emmanuel/Documents/Selenium/{}'.format(filestodelete))
但我不断收到此错误消息
Traceback (most recent call last):
File "/Users/emmanuel/Documents/Selenium/OptionsBotCode.py", line 33, in <module>
os.remove('/Users/emmanuel/Documents/Selenium/{}'.format(oldfilename))
FileNotFoundError: [Errno 2] No such file or directory: '/Users/emmanuel/Documents/Selenium//Users/emmanuel/Documents/Selenium/CC.csv'
另外,我觉得这不是办法,我只是想试一试。
有人知道解决方法吗?也许我可以 select 并在不使用 glob.glob 和混淆我可怜的计算机的情况下操作目录中的所有 .csv 文件?
谢谢
print(glob.glob('*.csv'))
将显示当返回列表为空时出现索引错误。 filestodelete = glob.glob('*.csv')[0]
从返回的文件列表中选择一个文件,但如果没有文件则索引 0 无效。
改为使用以下内容,它将 运行 返回列表中的每个文件,如果列表为空则不会 运行 os.remove
:
for file in glob.glob('*.csv'):
os.remove(file)
如果没有路径,上面将只在当前目录中查找 CSV 文件。
也可以把目录放在前面:
for file in glob.glob('/Users/emmanuel/Documents/Selenium/*.csv'):
os.remove(file)
我创建了一个 运行 在 visual studio 代码中完全没问题的脚本,但我现在正试图自动化该脚本,事实证明这有点棘手。我已经将该文件转换为用于自动化的 unix 可执行文件,但是当我单击我的脚本时,我一直收到错误消息。脚本的一部分 select 包含所有 .csv 文件类型并像这样删除它们...
filestodelete = glob.glob('*.csv')[0]
os.remove('/Users/emmanuel/Documents/Selenium/{}'.format(filestodelete))
问题是当终端到达这段代码时,我收到这个错误...
Traceback (most recent call last):
File "/Users/emmanuel/Documents/Selenium/OptionsBotCode.py", line 32, in <module>
filestodelete = glob.glob('*.csv')[0]
IndexError: list index out of range
我差点以为是因为我在VSC里运行代码的时候,代码自动使用了代码所在文件夹的目录。但是,当我 运行 通过 exec 文件访问它时,它不知道要在哪个目录中查找它需要删除的项目,并且它无法获取该目录,因为它读取了这一行(带有没有目录信息)
filestodelete = glob.glob('*.csv')[0]
在阅读这篇文章之前
os.remove('/Users/emmanuel/Documents/Selenium/{}'.format(filestodelete))
我试过通过将目标目录放在 *.csv 之前来指定位置
filestodelete = glob.glob('/Users/emmanuel/Documents/Selenium/*.csv')[0]
os.remove('/Users/emmanuel/Documents/Selenium/{}'.format(filestodelete))
但我不断收到此错误消息
Traceback (most recent call last):
File "/Users/emmanuel/Documents/Selenium/OptionsBotCode.py", line 33, in <module>
os.remove('/Users/emmanuel/Documents/Selenium/{}'.format(oldfilename))
FileNotFoundError: [Errno 2] No such file or directory: '/Users/emmanuel/Documents/Selenium//Users/emmanuel/Documents/Selenium/CC.csv'
另外,我觉得这不是办法,我只是想试一试。
有人知道解决方法吗?也许我可以 select 并在不使用 glob.glob 和混淆我可怜的计算机的情况下操作目录中的所有 .csv 文件?
谢谢
print(glob.glob('*.csv'))
将显示当返回列表为空时出现索引错误。 filestodelete = glob.glob('*.csv')[0]
从返回的文件列表中选择一个文件,但如果没有文件则索引 0 无效。
改为使用以下内容,它将 运行 返回列表中的每个文件,如果列表为空则不会 运行 os.remove
:
for file in glob.glob('*.csv'):
os.remove(file)
如果没有路径,上面将只在当前目录中查找 CSV 文件。 也可以把目录放在前面:
for file in glob.glob('/Users/emmanuel/Documents/Selenium/*.csv'):
os.remove(file)