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

PyCharm报TypeError: pretty_print()仅接受1个参数却传入2个,求解决

解决TypeError: pretty_print() takes 1 positional argument but 2 were given错误

问题根源

你的代码有两处问题直接导致了这个错误:

  1. pprint参数传递错误:你把积分区间(t, 0, t)作为第二个参数传给了pprint,但pprint仅接受一个待打印的表达式参数,这就触发了“参数数量不匹配”的报错。
  2. 初始化函数未调用:printing.init_printing没有加括号,无法完成SymPy打印环境的初始化。

修正后的代码

from IPython.display import display
from sympy import *
from sympy.interactive import printing 
printing.init_printing()  # 补全括号,完成初始化
t = symbols('t')
a=5
b=3
# 将积分区间作为第二个参数传给integrate函数,而非pprint
integral_result = integrate(
    1 + a/b + (a/b - 1)*sinh(a*t)*sin(b*t) - (a/b + 1)*cosh(a*t)*cos(b*t) + sinh(a*t)*cos(b*t) - a/b*cosh(a*t)*sin(b*t),
    (t, 0, t)
)
pprint(integral_result)

修正说明

  • 补全printing.init_printing()的括号,让初始化函数生效,确保SymPy能正确格式化输出。
  • 把积分区间参数移到integrate函数内部,让integrate正确计算定积分,再将计算结果传给pprint打印,保证pprint仅接收一个参数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 10:36:22