Python glob and bracket characters ('[]')

前端 未结 4 1822
一向
一向 2020-12-17 08:22

/Users/smcho/Desktop/bracket/[10,20] directory has \"abc.txt\", but when I run this Python code

import glob
import os.path

path1 = \"/Users/smcho/Desktop/br         


        
4条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-17 08:45

    The brackets in glob are used for character classes (e.g. [a-z] will match lowercase letters). You can put each bracket in a character class to force them being matched:

    path1 = "/Users/smcho/Desktop/bracket/[[]10,20[]]"
    

    [[] is a character class containing only the character [, and []] is a character class containing only the character ] (the closing bracket can be placed in a character class by putting it in the first position).

    Additionally, since brackets aren't escaped in string literals, your code will look for a backslash as well as a bracket.

提交回复
热议问题