Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ลำดับความสำคัญของตัวดำเนินการ Python


ตารางต่อไปนี้แสดงรายการตัวดำเนินการทั้งหมดจากลำดับความสำคัญสูงสุดไปต่ำสุด

ซีเนียร์ ตัวดำเนินการ &คำอธิบาย
1 **
การยกกำลัง (ยกกำลัง)
2 ~ + -
Complement, unary plus และ minus (ชื่อเมธอดสำหรับสองตัวสุดท้ายคือ +@ และ -@)
3 * / % //
คูณหารโมดูโลและหารพื้น
4 + -
การบวกและการลบ
5 >> <<
เลื่อนระดับบิตขวาและซ้าย
6 &
Bitwise 'AND'td>
7 ^ |
Bitwise พิเศษ `OR' และปกติ `OR'
8 <=<>>=
ตัวดำเนินการเปรียบเทียบsp>
9 <> ==!=
ตัวดำเนินการความเท่าเทียมกัน
10 =%=/=//=-=+=*=**=
ผู้ประกอบการที่ได้รับมอบหมาย
11 ไม่ใช่
ไม่ใช่
12 ไม่อยู่ใน
ผู้ประกอบการสมาชิก
13 ไม่หรือและ
ตัวดำเนินการลอจิก

ลำดับความสำคัญของตัวดำเนินการส่งผลต่อวิธีการประเมินนิพจน์

ตัวอย่างเช่น x =7 + 3 * 2; ในที่นี้ x ถูกกำหนดเป็น 13 ไม่ใช่ 20 เนื่องจากตัวดำเนินการ * มีลำดับความสำคัญสูงกว่า + ดังนั้นจึงคูณ 3*2 ก่อนแล้วจึงบวกเข้ากับ 7

ในที่นี้ ตัวดำเนินการที่มีลำดับความสำคัญสูงสุดจะปรากฏที่ด้านบนสุดของตาราง ตัวดำเนินการที่มีค่าต่ำสุดจะปรากฏที่ด้านล่าง

ตัวอย่าง

#!/usr/bin/python
a = 20
b = 10
c = 15
d = 5
e = 0
e = (a + b) * c / d #( 30 * 15 ) / 5
print "Value of (a + b) * c / d is ", e
e = ((a + b) * c) / d # (30 * 15 ) / 5
print "Value of ((a + b) * c) / d is ", e
e = (a + b) * (c / d); # (30) * (15/5)
print "Value of (a + b) * (c / d) is ", e
e = a + (b * c) / d; # 20 + (150/5)
print "Value of a + (b * c) / d is ", e

ผลลัพธ์

เมื่อคุณรันโปรแกรมข้างต้น มันจะสร้างผลลัพธ์ดังต่อไปนี้ -

Value of (a + b) * c / d is 90
Value of ((a + b) * c) / d is 90
Value of (a + b) * (c / d) is 90
Value of a + (b * c) / d is 50