python - Python脚本没有在目录中列出文件?
问题描述
我有一个小问题。
我有以下功能:
def getCommands():
for file in os.listdir(com_dir):
if file.endswith(com_ext):
z = string.strip(file, '.gcom')
print z
并且在目录(定义者com_dir
)中有三个文件。
a.gcom
b.gcom
c.gcom
跑步时getCommands()
输出如下:
a
b
显示了文件 a 和 b,但是未显示 c,所有文件都在目录中,并且都使用相同的文件扩展名:.gcom
这也是com_ext
可变的。
有没有人有关于为什么文件 c 没有显示的任何提示?
旁注:输出中似乎有一个空格,c
但是我不确定这是否与手头的问题有关,而不仅仅是脚本中其他地方的意外空间。
解决方案
strip
从字符串的两端删除所有给定的字符,无论它们出现的顺序如何。如果您的字符串是c.gcom
,则从字符串的末尾strip('.gcom')
删除所有字符.
, g
, c
, o
and m
,不留下任何东西。它不会停止剥离,直到遇到不是.
, g
, c
, o
or的字符m
(或删除所有内容)。
如果您有一个以 结尾的字符串.gcom
,并且您只想删除该结尾,则可以使用:
z = file[:-5]
或者,使用您的com_ext
变量
com_ext = '.gcom'
...
if file.endswith(com_ext):
z = file[:-len(com_ext)]
推荐阅读
- azure - Azure YAML 构建;在解决方案中只构建单个项目?
- freertos - FreeRTOS 中等待任务自行删除的正确方法是什么?
- json - python写入json文件而不覆盖
- sql - 左连接临时表时,将表达式转换为数据类型 int 时出现算术溢出错误
- jenkins - Flyway 和 Jenkins 集成使用来自 github 路径的位置
- python - 为什么我的自动编码器的潜在空间输出不是我预期的形状?
- performancecounter - 使用自定义性能计数器所需的权限
- javascript - 将超链接添加到 Google Chart Timeline RowLabel
- vim - 基于第一个制表符的 Ultisnips 动态制表符生成
- r - 将 method.args 添加到 ggplot stat_smooth() 会导致错误