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

如何让SymPy的pprint不换行?实现积分表达式与结果间加等号

解决SymPy pprint自动换行,实现积分式与结果用等号连接

要把积分表达式和计算结果放在同一行并用等号连接,你可以用SymPy的pretty()函数替代pprint()——它会返回表达式的美化字符串,而非直接打印输出,这样就能自由拼接内容。

修正后的代码示例

import sympy as smp

# 修正符号定义:让变量名和符号名对应
Um, x = smp.symbols('Um x', positive=True, real=True)

f = (Um * smp.sin(x)) / smp.pi

# 获取积分表达式和结果的美化字符串,设置足够宽的列数避免自动换行
integral_expr = smp.pretty(smp.Integral(f, (x, 0, smp.pi)), num_columns=100)
integral_result = smp.pretty(smp.integrate(f, (x, 0, smp.pi)))

# 拼接并打印
print(f"{integral_expr} = {integral_result}")

关键说明

  • pretty()是pprint()的底层支撑函数,返回格式化后的字符串,方便你自由组合内容。
  • num_columns=100用于设置足够宽的输出列数,防止长表达式自动换行,可根据实际表达式长度调整数值。
  • 若不需要Unicode符号(想用纯ASCII字符显示积分),可以添加use_unicode=False参数:
    integral_expr = smp.pretty(smp.Integral(f, (x, 0, smp.pi)), num_columns=100, use_unicode=False)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 10:27:45