You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

导入time/glob触发SyntaxError:非默认参数在默认参数之后

解决PyCharm中SyntaxError: non-default argument follows default argument错误

你贴出的代码本身没有语法问题,控制台能正常运行也证明了这一点。错误提示指向import time行是因为PyCharm的语法解析器可能把真正的错误位置关联到了附近的代码行,真正的问题出在同一个Python文件的其他代码中。

核心原因

这个错误的本质是函数定义时参数顺序错误——你在某个函数里把带有默认值的参数放在了不带默认值的参数前面,比如:

# 错误示例:带默认值的参数在无默认值参数之前
def greet(name="Guest", age):
    print(f"Hello {name}, you are {age} years old")

这种写法违反Python语法规则,才会触发该错误,而编辑器可能错误地将报错位置指向了附近的import语句。

解决步骤

  • 检查全部代码:打开你运行的Python文件,逐行排查所有函数定义,确保所有不带默认值的参数都放在带默认值参数的前面。修正后重新运行即可。
  • 验证解释器配置:
    1. 打开PyCharm,进入File > Settings > Project: [你的项目名] > Python Interpreter
    2. 确认当前使用的解释器是Python 3.11.4(和你控制台运行的版本一致)
    3. 如果版本不符,点击右上角齿轮图标,选择Add,找到本地Python 3.11.4的安装路径添加并设置为项目解释器
  • 隔离测试:创建一个全新的空白Python文件,只粘贴你提供的代码并运行。如果能正常输出年份,说明原文件存在其他语法错误;如果仍报错,重新检查解释器配置。

关于glob模块的类似问题

和time模块的情况完全一致,不是glob库本身的问题,而是你的代码中其他位置存在函数参数顺序错误,导致报错指向了import glob行,按照上面的步骤排查即可。

内容的提问来源于stack exchange,提问作者Abend360

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 12:35:42