Mac终端运行含空格路径的Python脚本报错,求解决方法
解决终端执行Python脚本时路径含空格的语法错误问题
我来帮你搞定这个路径空格的小坑——这在终端里真的是高频踩雷点!
你遇到的核心问题很明确:终端默认会把空格当成命令参数的分隔符。直接写Google Drive的话,shell会把/Users/username/Google当成脚本路径,Drive/Python/Production_Code/script.py当成额外的无效参数,自然会报语法错误。至于加引号后还报错,大概率是不小心用了中文引号,或者引号的包裹范围不对。
下面给你几个百分百可行的解决方案,任选其一就行:
方法一:用反斜杠转义空格
在路径里的空格前面加\,明确告诉shell这个空格是路径的一部分,不是分隔符。命令写成:python /Users/username/Google\ Drive/Python/Production_Code/script.py方法二:用英文单引号包裹完整路径
一定要用英文的单引号''(别用中文的‘’!这是很多人踩的隐形坑),把整个脚本路径完整包起来:python '/Users/username/Google Drive/Python/Production_Code/script.py'方法三:用英文双引号包裹路径
英文双引号""同样有效,和单引号的区别是双引号里的特殊字符(比如$)会被shell解析,这里路径里没有特殊字符的话,两者完全通用:python "/Users/username/Google Drive/Python/Production_Code/script.py"方法四:切换到脚本所在目录再执行
要是不想纠结路径转义,也可以先进入脚本所在的文件夹,再直接运行脚本:cd "/Users/username/Google Drive/Python/Production_Code/" python script.py
额外小技巧:终端里输入路径时,输到Google后面按一下Tab键,终端会自动帮你补全转义后的Google\ Drive,既省心又不会出错!
内容的提问来源于stack exchange,提问作者Ani kumar
相关产品推荐
相关产品推荐

