SymPy - สัญลักษณ์
Symbolเป็นคลาสที่สำคัญที่สุดในไลบรารี symPy ดังที่ได้กล่าวไว้ก่อนหน้านี้การคำนวณเชิงสัญลักษณ์จะทำด้วยสัญลักษณ์ ตัวแปร SymPy เป็นอ็อบเจ็กต์ของคลาส Symbols
อาร์กิวเมนต์ของฟังก์ชัน Symbol () คือสตริงที่มีสัญลักษณ์ซึ่งสามารถกำหนดให้กับตัวแปรได้
>>> from sympy import Symbol
>>> x=Symbol('x')
>>> y=Symbol('y')
>>> expr=x**2+y**2
>>> expr
ข้อมูลโค้ดด้านบนให้เอาต์พุตเทียบเท่ากับนิพจน์ด้านล่าง -
$x^2 + y^2$
สัญลักษณ์อาจมีมากกว่าหนึ่งตัวอักษร
>>> s=Symbol('side')
>>> s**3
ข้อมูลโค้ดด้านบนให้เอาต์พุตเทียบเท่ากับนิพจน์ด้านล่าง -
$side^3$
SymPy ยังมีไฟล์ Symbols()ฟังก์ชันที่สามารถกำหนดสัญลักษณ์หลายตัวพร้อมกัน สตริงประกอบด้วยชื่อของตัวแปรที่คั่นด้วยลูกน้ำหรือช่องว่าง
>>> from sympy import symbols
>>> x,y,z=symbols("x,y,z")
ในโมดูล abc ของ SymPy ตัวอักษรละตินและกรีกทั้งหมดถูกกำหนดเป็นสัญลักษณ์ ดังนั้นแทนที่จะสร้างอินสแตนซ์วัตถุ Symbol วิธีนี้จึงสะดวก
>>> from sympy.abc import x,y,z
อย่างไรก็ตามชื่อ C, O, S, I, N, E และ Qเป็นสัญลักษณ์ที่กำหนดไว้ล่วงหน้า นอกจากนี้สัญลักษณ์ที่มีตัวอักษรมากกว่าหนึ่งตัวจะไม่ได้กำหนดไว้ในโมดูล abc ซึ่งคุณควรใช้วัตถุ Symbol ดังข้างต้น โมดูล abc กำหนดชื่อพิเศษที่สามารถตรวจจับนิยามในเนมสเปซ SymPy เริ่มต้น clash1 ประกอบด้วยตัวอักษรเดี่ยวและ clash2 มีสัญลักษณ์การปะทะกันหลายตัวอักษร
>>> from sympy.abc import _clash1, _clash2
>>> _clash1
ผลลัพธ์ของตัวอย่างข้อมูลข้างต้นมีดังนี้ -
{'C': C, 'O': O, 'Q': Q, 'N': N, 'I': I, 'E': E, 'S': S}
>>> _clash2
ผลลัพธ์ของตัวอย่างข้อมูลข้างต้นมีดังนี้ -
{'beta': beta, 'zeta': zeta, 'gamma': gamma, 'pi': pi}
สัญลักษณ์ที่จัดทำดัชนีสามารถกำหนดได้โดยใช้ไวยากรณ์ที่คล้ายกับฟังก์ชัน range () ช่วงจะถูกระบุด้วยเครื่องหมายจุดคู่ ประเภทของช่วงถูกกำหนดโดยอักขระทางด้านขวาของลำไส้ใหญ่ หาก itr เป็นตัวเลขหลักทั้งหมดที่อยู่ติดกันทางด้านซ้ายจะถือเป็นค่าเริ่มต้นที่ไม่เป็นค่าลบ ตัวเลขที่ต่อเนื่องกันทั้งหมดทางด้านขวาจะถือเป็น 1 ที่มากกว่าค่าสิ้นสุด
>>> from sympy import symbols
>>> symbols('a:5')
ผลลัพธ์ของตัวอย่างข้อมูลข้างต้นมีดังนี้ -
(a0, a1, a2, a3, a4)
>>> symbols('mark(1:4)')
ผลลัพธ์ของตัวอย่างข้อมูลข้างต้นมีดังนี้ -
(mark1, mark2, mark3)