Hàm y = symbols['y']
eq1 = Eq[y + 3 + 8] sol = solve[eq1]
sol
Giải phương trình
from sympy import symbols, Eq, solve
6 của Sympy có thể được sử dụng để giải các phương trình và biểu thức có chứa các biến toán học tượng trưng.
Phương trình với một giải pháp
Một phương trình đơn giản chứa một biến như X-4-2 = 0 có thể được giải quyết bằng hàm
from sympy import symbols, Eq, solve6 của Sympy. Khi chỉ có một giá trị là một phần của giải pháp, giải pháp ở dạng danh sách.x-4-2 = 0 can be solved using the SymPy'sy = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve6 function. When only one value is part of the solution, the solution is in the form of a list.y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
Phần mã bên dưới thể hiện hàm
from sympy import symbols, Eq, solve6 của Sympy khi biểu thức được xác định bằng các biến toán học tượng trưng.y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
In [1]:
from sympy import symbols, solveĐể rút giá trị ra khỏi danh sách giải phápx = symbols['x'] expr = x-4-2
sol = solve[expr]
sol
from sympy import symbols, Eq, solve9, có thể sử dụng lập chỉ mục danh sách thông thường. Phần mã bên dưới thể hiện hàm giải quyết [] của Sympy khi một phương trình được xác định với các biến toán học tượng trưng.y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
In [3]:
from sympy import symbols, Eq, solvey = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
Phương trình với hai giải pháp
Phương trình bậc hai, như x^2 - 5x + 6 = 0, có hai giải pháp. Hàm
from sympy import symbols, Eq, solve6 của Sympy có thể được sử dụng để giải một phương trình với hai giải pháp. Khi một phương trình có hai giải pháp, hàmy = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve6 của Sympy sẽ xuất ra danh sách. Các yếu tố trong danh sách là hai giải pháp.x^2 - 5x + 6 = 0, have two solutions. SymPy'sy = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve6 function can be used to solve an equation with two solutions. When an equation has two solutions, SymPy'sy = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve6 function outputs a list. The elements in the list are the two solutions.y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
Phần mã bên dưới cho thấy cách một phương trình với hai giải pháp được giải quyết với hàm
from sympy import symbols, Eq, solve6 của Sympy.y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
In [4]:
from sympy import symbols, Eq, solveNếu bạn chỉ định đối số từ khóay = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve3 cho hàmy = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve6 của Sympy, đầu ra vẫn là một danh sách, nhưng bên trong danh sách là một từ điển cho thấy biến nào đã được giải quyết.y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
In [5]:
from sympy import symbols, Eq, solvey = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1, dict=True] sol
- Sympy
- Giải phương trình và viết biểu thức bằng Sympy và Python
Sympy [//www.sympy.org] là một thư viện Python cho toán học tượng trưng. [//www.sympy.org] is a Python library for symbolic math.
Trong toán học tượng trưng, các biểu tượng được sử dụng để thể hiện các biểu thức toán học. Một ví dụ về biểu thức toán học tượng trưng là bên dưới:
Trong biểu thức ở trên, chúng tôi có các biến $ x $, $ y $ và $ z $.
Nếu chúng ta xác định biểu thức toán học biểu tượng thứ hai là:
Chúng ta có thể thay thế bằng $ a + b $ cho $ x $.
Biểu thức kết quả là:
$$ [a + b]^{2} + y^{2} = z $$$$ a^{2} + 2ab + b^{2} + y^{2} = z $$
Giải quyết $ y $ theo giá $ a $, $ b $ và $ z $, kết quả là:
$$ y = \ sqrt {z - a^{2} - 2ab - b^{2}} $$
Nếu chúng ta có các giá trị số cho $ Z $, $ A $ và $ B $, chúng ta có thể sử dụng Python để tính giá trị của $ y $.
Tuy nhiên, nếu chúng ta không có giá trị số cho $ z $, $ a $ và $ b $, Python cũng có thể được sử dụng để sắp xếp lại các thuật ngữ của biểu thức và giải quyết cho biến $ y $ theo các biến khác $, $ a $ và $ b $. Làm việc với các biểu tượng toán học theo cách lập trình, thay vì làm việc với các giá trị số theo cách lập trình, được gọi là toán học tượng trưng.
Sympy là một thư viện Python để làm việc với toán học tượng trưng. Trước khi Sympy có thể được sử dụng, nó cần được cài đặt. Việc cài đặt Sympy được thực hiện bằng cách sử dụng dấu nhắc Anaconda [hoặc thiết bị đầu cuối và PIP] với lệnh: is a Python library for working with symbolic math. Before SymPy can be used, it needs to be installed. The installation of Sympy is accomplished using the Anaconda Prompt [or a terminal and pip] with the command:
Sympy được bao gồm trong phân phối Anaconda của Python. Nếu bạn có phân phối Anaconda đầy đủ, bạn sẽ được thông báo rằng thư viện Sympy đã được cài đặt. is included in the Anaconda distribution of Python. If you have the full Anaconda distribution, you will be notified that the SymPy library is already installed.
Xác định các biến trong Sympy¶
Để xác định các biến toán học tượng trưng với Sympy, trước tiên hãy nhập hàm
from sympy import symbols, Eq, solve5 từ mô -đun Sympy:SymPy, first import they = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve5 function from the SymPy module:y = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
In [1]:
from sympy import symbols
Các biến toán học tượng trưng được khai báo bằng hàm
from sympy import symbols, Eq, solve5 của Sympy. Lưu ý, các đối số được truyền cho hàmy = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve5 [tên biểu tượng] được phân tách bằng một không gian, không có dấu phẩy và được bao quanh bởi các trích dẫn. Đầu ra của hàmy = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve5 là các đối tượng ký hiệu Sympy. Các đối tượng đầu ra này được phân tách bằng dấu phẩy mà không có dấu ngoặc kép.SymPy'sy = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve5 function. Note, the arguments passed to they = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve5 function [symbol names] are separated by a space, no comma, and surrounded by quotes. The output of they = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve5 function are SymPy symbols objects. These output objects are separated by commas with no quotation marks.y = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
Bây giờ các biểu tượng
from sympy import symbols, Eq, solve9 vày = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve0 đã được khởi tạo, một biểu thức toán học tượng trưng sử dụngy = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1, dict=True] sol
from sympy import symbols, Eq, solve9 vày = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve0 có thể được tạo ra.y = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1, dict=True] sol
Một biểu thức toán học tượng trưng là sự kết hợp của các biến toán học tượng trưng với số và toán tử toán học, chẳng hạn như ____ 33, ________ 34, ________ 35 và
from sympy import symbols, Eq, solve6. Các quy tắc Python tiêu chuẩn để làm việc với các số áp dụng trong các biểu thức toán học biểu tượng Sympy.SymPy symbolic math expressions.y = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1, dict=True] sol
Sử dụng phương pháp
from sympy import symbols, Eq, solve7 để chèn giá trị số vào biểu thức toán học tượng trưng. Đối số đầu tiên của phương thứcy = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1, dict=True] sol
from sympy import symbols, Eq, solve7 là đối tượng ký hiệu [biến] và đối số thứ hai là giá trị số. Trong biểu thức trên:y = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1, dict=True] sol
$$ 2x + y $$
Nếu chúng ta thay thế:
$$ x = 2 $$
Biểu thức kết quả là:
$$ [a + b]^{2} + y^{2} = z $$$$ a^{2} + 2ab + b^{2} + y^{2} = z $$
Giải quyết $ y $ theo giá $ a $, $ b $ và $ z $, kết quả là:
Để làm cho sự thay thế vĩnh viễn, một đối tượng biểu thức mới cần được gán cho đầu ra của phương thức
from sympy import symbols, Eq, solve7.y = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1, dict=True] sol
In [6]:
expr = 2*x + y expr2 = expr.subs[x, 2] expr2
Các biến Sympy cũng có thể được thay thế thành các biểu thức Sympy variables can also be substituted into SymPy expressions
In [7]:
x, y, z = symbols['x y z'] expr = 2*x + y expr2 = expr.subs[x, z] expr2
Sự thay thế phức tạp hơn cũng có thể được hoàn thành. Xem xét những điều sau:
$$ 2x + y $$
Thay thế trong:
$$ y = 2x^2 + z^{-3} $$
Kết quả trong:
$$ 2x + 2x^2 + z^{-3} $$
In [8]:
x, y, z = symbols['x y z'] expr = 2*x + y expr2 = expr.subs[y, 2*x**2 + z**[-3]] expr2
Một ví dụ thực tế hơn có thể liên quan đến một biểu thức lớn và một số thay thế thay đổi.
$$ n_0E^{-q_v/rt} $$$$ n_0 = 3,48 \ lần 10^{-6} $$$$
In [9]:
from sympy import symbols, exp n0, Qv, R, T = symbols['n0 Qv R T'] expr = n0*exp[-Qv/[R*T]]
Nhiều phương thức Sympy
from sympy import symbols5 có thể được chuỗi với nhau để thay thế nhiều biến trong một dòng mã.SymPy
from sympy import symbols5 methods can be chained together to substitue multiple variables in one line of code.
In [10]:
expr.subs[n0, 3.48e-6].subs[Qv,12700].subs[R, 8031].subs[T, 1000+273]
Out[10]:
from sympy import symbols, Eq, solve0y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
Để đánh giá một biểu thức là số điểm nổi [lấy câu trả lời bằng số], hãy sử dụng phương thức
from sympy import symbols6 của Sympy.Sympy's
from sympy import symbols6 method.
In [11]:
from sympy import symbols, Eq, solve1y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
Xác định các phương trình trong Sympy¶
Chúng ta có thể xác định các phương trình trong Sympy bằng các biến toán học tượng trưng. Các phương trình trong Sympy khác với các biểu thức trong Sympy. Một biểu thức không có sự bình đẳng. Một phương trình có sự bình đẳng. Một phương trình bằng với một cái gì đó.SymPy using symbolic math variables. Equations in SymPy are different than expressions in SymPy. An expression does not have equality. An equation has equality. An equation is equal to something.
In [1]:
from sympy import symbols, Eq, solve2y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
Các phương trình Sympy được khởi tạo như một đối tượng của lớp from sympy import symbols
7. Sau khi các ký hiệu Sympy được tạo, các ký hiệu có thể được chuyển vào một đối tượng phương trình. Hãy tạo phương trình: equations are instantiated as an object of the
from sympy import symbols7 class. After SymPy symbols are created, the symbols can be passed into an equation object. Let's create the equation:
$$ 2x + y - 1 = 0 $$
Bây giờ chúng ta hãy tạo một phương trình thứ hai:
$$ x + y - 5 = 0 $$
Để giải hai phương trình cho hai biến
from sympy import symbols, Eq, solve9 vày = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve0, chúng tôi sẽ sử dụng hàmy = symbols['x'] eq1 = Eq[x*2 -5x + 6]
sol = solve[eq1, dict=True] sol
from sympy import symbols, Eq, solve6 của Sympy. Hàmy = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve6 có hai đối số, một tuple của các phương trìnhy = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
expr = 2*x + y expr2 = expr.subs[x, 2] expr22 và một tuple của các biến để giải cho
expr = 2*x + y expr2 = expr.subs[x, 2] expr23.SymPy's
from sympy import symbols, Eq, solve6 function. They = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve6 function takes two arguments, a tuple of the equationsy = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
expr = 2*x + y expr2 = expr.subs[x, 2] expr22 and a tuple of the variables to solve for
expr = 2*x + y expr2 = expr.subs[x, 2] expr23.
In [5]:
from sympy import symbols, Eq, solve3y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
Đối tượng giải pháp Sympy là một từ điển Python. Các khóa là các đối tượng biến Sympy và các giá trị là các giá trị số mà các biến này tương ứng.SymPy solution object is a Python dictionary. The keys are the SymPy variable objects and the values are the numerical values these variables correspond to.
In [6]:
from sympy import symbols, Eq, solve4y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve5y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
Bản tóm tắt¶
Trong bài đăng này, chúng tôi đã xem một gói Python cho toán học tượng trưng được gọi là Sympy. Sử dụng toán học tượng trưng, chúng ta có thể xác định các biểu thức và phương trình chính xác theo các biến tượng trưng. Chúng tôi đã xem xét cách tạo một biểu thức sympy và các giá trị và biến thay thế vào biểu thức. Sau đó, chúng tôi đã tạo ra các đối tượng phương trình Sympy và giải hai phương trình cho hai chưa biết bằng hàm
from sympy import symbols, Eq, solve6 của Sympy.SymPy. Using symbolic math, we can define expressions and equations exactly in terms of symbolic variables. We reviewed how to create a SymPy expression and substitue values and variables into the expression. Then we created to SymPy equation objects and solved two equations for two unknowns using SymPy'sy = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol
from sympy import symbols, Eq, solve6 function.y = symbols['y'] eq1 = Eq[y + 3 + 8]
sol = solve[eq1] sol