Python 3.x使用glob遍历文件遇Syntax Error,求排查方案
解决你的glob语法错误问题
嘿,你遇到的这个语法错误和Python 3.x的glob语法变更完全没关系,就是代码里的一个小疏忽:你写的路径没有用引号包裹,Python会把裸写的/src/xyz/rte/folder/当成无效的标识符组合,直接抛出语法错误。
修正后的代码示例
import csv import os import glob from pandas import DataFrame, read_csv # 给路径加上引号,并且添加*通配符匹配文件夹内所有文件 files = glob.glob('/src/xyz/rte/folder/*') for fle in files: # 这里写入你的文件处理逻辑 print(fle)
几个关键注意点
- 字符串必须加引号:不管是文件路径还是其他字符串,在Python里都要用单引号
'或双引号"包裹,这是最基础的语法要求; - 通配符的使用:如果要匹配目标文件夹下的所有文件,记得在路径末尾加上
*——要是不加的话,glob.glob只会返回这个文件夹本身的路径(当它存在时),不会返回里面的文件; - 跨平台路径兼容:如果你的代码需要在不同操作系统(比如Windows、Linux)上运行,推荐用
os.path.join来拼接路径,避免手动写斜杠带来的问题:target_dir = '/src/xyz/rte/folder' files = glob.glob(os.path.join(target_dir, '*'))
内容的提问来源于stack exchange,提问作者New User
相关产品推荐
相关产品推荐

