概述
在sympy库的符号运算中,定义符号变量的方法最基本的用法是先明确需要多少个变量,再预先定义这些变量。
如:
import sympy as sp
x, y = sp.symbols('x y')
但在某些场景下,我们可能无法得知具体需要多少个符号变量(当然,可以通过预先定义一个足够庞大的符号变量系列来暴力解决),所以需要根据外部条件由程序自动定义符号变量。
假设我们需要num个符号变量(num具体数值由外部确定),可采用如下方式进行循环定义
import sympy as sp
def define_symbols(num):
for i in list(range(num)): # 由传入的num,创建一个从0开始的整数列表
str_sym = "x" + str(i) # 创建字符串形式的变量
sym = sp.symbols('%s' % str_sym) # 与print表达式一样特性,可将字符串定义为符号变量
试验自动生成一个表达式:
import sympy as sp
def define_symbols(num):
expression = 0 # 初始化表达式为0
for i in list(range(num)): # 由传入的num,创建一个从0开始的整数列表
str_sym = "x" + str(i) # 创建字符串形式的变量
sym = sp.symbols('%s' % str_sym) # 与print表达式一样特性,可将字符串定义为符号变量
expression += sym # 将定义好的符号变量,简单的累加到表达式中
return expression
# 输入5,表示想获得一个有5个符号变量的表达式
print("得到的表达式", define_symbols(5))
结果:
最后
以上就是会撒娇蚂蚁为你收集整理的【Python】小技巧—自动循环定义符号变量的全部内容,希望文章能够帮你解决【Python】小技巧—自动循环定义符号变量所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复