【问题标题】:Query about the Python fnmatch module?查询 Python fnmatch 模块?
【发布时间】:2019-07-17 20:21:45
【问题描述】:

我正在搜索 fnmatch 模块,在此过程中,我遇到了一个声明,但我不知道发生了什么……有人可以帮助我吗?我需要知道-25 在此代码中的用途:

print 'Filename: %-25s %s' % (name, fnmatch.fnmatchcase(name, pattern))

【问题讨论】:

    标签: python python-3.x string-interpolation fnmatch


    【解决方案1】:

    %-25s 代表包含 25 个空格的字符串。也可以替换为25*" "

    上面这行代码可以写成:

    a_string_of_spaces = 25*" "
    X = fnmatch.fnmatchcase(filename, pattern)
    print("Filename:", name, a_string_of_spaces, X)
    

    根据python文档:

    fnmatch.fnmatchcase(filename, pattern): 测试文件名是否匹配模式,返回 True 或 False;比较区分大小写,不适用 os.path.normcase()

    因此,函数参数filename 会检查pattern 类型的模式。然后该函数返回一个布尔值TrueFalse

    因此,整个代码行打印出类似这样的内容(FILE_NAME = 文件名,PATTERN 的模式与文件匹配):

    Filename: FILE_NAME                           True      
    

    希望对您有所帮助!

    【讨论】:

    • 我知道这一点,但我担心的是 %-25s 只有我得到了大部分代码,但感谢您的解释
    • 哦,太好了!在这种情况下,请说明代码的哪一部分不清楚。无论如何,对于有类似疑问的人来说,更长的解释会更好...如果您觉得有帮助,请接受答案:)
    • Yaa 看到我编辑我的问题的困惑 :)
    • 也编辑了我的答案
    猜你喜欢
    • 1970-01-01
    • 2017-05-12
    • 2018-02-10
    • 2014-10-09
    • 2016-10-18
    • 2013-03-19
    • 2011-08-10
    • 2021-05-01
    • 1970-01-01
    相关资源
    最近更新 更多