Python 3 - ตัวดำเนินการพื้นฐาน
ตัวดำเนินการคือโครงสร้างซึ่งสามารถจัดการกับค่าของตัวถูกดำเนินการได้ พิจารณานิพจน์ 4 + 5 = 9 ในที่นี้ 4 และ 5 เรียกว่าตัวถูกดำเนินการและ + เรียกว่าตัวดำเนินการ
ประเภทของตัวดำเนินการ
ภาษา Python รองรับตัวดำเนินการประเภทต่อไปนี้ -
- ตัวดำเนินการเลขคณิต
- ตัวดำเนินการเปรียบเทียบ (เชิงสัมพันธ์)
- ผู้ดำเนินการมอบหมาย
- ตัวดำเนินการทางตรรกะ
- ตัวดำเนินการ Bitwise
- ผู้ดำเนินการสมาชิก
- ตัวดำเนินการระบุตัวตน
ให้เราดูตัวดำเนินการทั้งหมดทีละตัว
ตัวดำเนินการทางคณิตศาสตร์ Python
สมมติตัวแปร a เก็บค่า 10 และตัวแปร b ถือค่า 21 แล้ว -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
+ เพิ่มเติม | เพิ่มค่าที่ด้านใดด้านหนึ่งของตัวดำเนินการ | a + b = 31 |
- การลบ | ลบตัวถูกดำเนินการทางขวามือออกจากตัวถูกดำเนินการด้านซ้าย | ก - ข = -11 |
* การคูณ | คูณค่าที่ด้านใดด้านหนึ่งของตัวดำเนินการ | a * b = 210 |
/ แผนก | แบ่งตัวถูกดำเนินการทางซ้ายด้วยตัวถูกดำเนินการทางขวามือ | b / a = 2.1 |
% โมดูลัส | แบ่งตัวถูกดำเนินการทางซ้ายด้วยตัวถูกดำเนินการทางขวามือและส่งคืนส่วนที่เหลือ | ข% a = 1 |
** เลขชี้กำลัง | ทำการคำนวณเลขชี้กำลัง (กำลัง) บนตัวดำเนินการ | a ** b = 10 ยกกำลัง 20 |
// | Floor Division - การหารตัวถูกดำเนินการที่ผลลัพธ์คือผลหารที่ตัวเลขหลังจุดทศนิยมจะถูกลบออก แต่ถ้าตัวถูกดำเนินการตัวใดตัวหนึ่งเป็นลบผลลัพธ์จะถูกปัดเศษเช่นปัดจากศูนย์ (ไปทางอินฟินิตี้เชิงลบ): | 9 // 2 = 4 และ 9.0 // 2.0 = 4.0, -11 // 3 = -4, -11.0 // 3 = -4.0 |
ตัวดำเนินการเปรียบเทียบ Python
ตัวดำเนินการเหล่านี้จะเปรียบเทียบค่าที่ด้านใดด้านหนึ่งของพวกเขาและตัดสินความสัมพันธ์ เรียกอีกอย่างว่าตัวดำเนินการเชิงสัมพันธ์
สมมติตัวแปร a เก็บค่า 10 และตัวแปร b ถือค่า 20 แล้ว -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
== | ถ้าค่าของตัวถูกดำเนินการสองค่าเท่ากันเงื่อนไขจะกลายเป็นจริง | (a == b) ไม่เป็นความจริง |
! = | หากค่าของตัวถูกดำเนินการสองตัวไม่เท่ากันเงื่อนไขจะกลายเป็นจริง | (a! = b) เป็นจริง |
> | ถ้าค่าของตัวถูกดำเนินการด้านซ้ายมากกว่าค่าของตัวถูกดำเนินการด้านขวาเงื่อนไขจะกลายเป็นจริง | (a> b) ไม่เป็นความจริง |
< | ถ้าค่าของตัวถูกดำเนินการด้านซ้ายน้อยกว่าค่าของตัวถูกดำเนินการด้านขวาเงื่อนไขจะกลายเป็นจริง | (a <b) เป็นจริง |
> = | ถ้าค่าของตัวถูกดำเนินการด้านซ้ายมากกว่าหรือเท่ากับค่าของตัวถูกดำเนินการด้านขวาเงื่อนไขจะกลายเป็นจริง | (a> = b) ไม่เป็นความจริง |
<= | ถ้าค่าของตัวถูกดำเนินการด้านซ้ายน้อยกว่าหรือเท่ากับค่าของตัวถูกดำเนินการด้านขวาเงื่อนไขจะกลายเป็นจริง | (a <= b) เป็นจริง |
ตัวดำเนินการกำหนด Python
สมมติตัวแปร a เก็บค่า 10 และตัวแปร b ถือค่า 20 แล้ว -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
= | กำหนดค่าจากตัวถูกดำเนินการด้านขวาไปยังตัวถูกดำเนินการด้านซ้าย | c = a + b กำหนดค่าของ a + b ให้เป็น c |
+ = เพิ่มและ | เพิ่มตัวถูกดำเนินการด้านขวาให้กับตัวถูกดำเนินการด้านซ้ายและกำหนดผลลัพธ์ให้กับตัวถูกดำเนินการด้านซ้าย | c + = a เทียบเท่ากับ c = c + a |
- = ลบและ | มันจะลบตัวถูกดำเนินการด้านขวาออกจากตัวถูกดำเนินการด้านซ้ายและกำหนดผลลัพธ์ให้กับตัวถูกดำเนินการด้านซ้าย | c - = a เทียบเท่ากับ c = c - a |
* = คูณและ | มันจะคูณตัวถูกดำเนินการด้านขวากับตัวถูกดำเนินการด้านซ้ายและกำหนดผลลัพธ์ให้กับตัวถูกดำเนินการด้านซ้าย | c * = a เทียบเท่ากับ c = c * a |
/ = หาร AND | มันแบ่งตัวถูกดำเนินการด้านซ้ายกับตัวถูกดำเนินการด้านขวาและกำหนดผลลัพธ์ให้กับตัวถูกดำเนินการด้านซ้าย | c / = a เทียบเท่ากับ c = c / ac / = a เทียบเท่ากับ c = c / a |
% = โมดูลัสและ | ใช้โมดูลัสโดยใช้ตัวถูกดำเนินการสองตัวและกำหนดผลลัพธ์ให้กับตัวถูกดำเนินการด้านซ้าย | c% = a เทียบเท่ากับ c = c% a |
** = เลขชี้กำลังและ | ทำการคำนวณเลขชี้กำลัง (กำลัง) บนตัวดำเนินการและกำหนดค่าให้กับตัวถูกดำเนินการด้านซ้าย | c ** = a เทียบเท่ากับ c = c ** a |
// = กองพื้น | ดำเนินการแบ่งชั้นบนตัวดำเนินการและกำหนดค่าให้กับตัวถูกดำเนินการด้านซ้าย | c // = a เทียบเท่ากับ c = c // a |
Python Bitwise ตัวดำเนินการ
ตัวดำเนินการ Bitwise ทำงานกับบิตและดำเนินการแบบบิตต่อบิต สมมติว่า a = 60; และ b = 13; ตอนนี้ในรูปแบบไบนารีจะเป็นดังนี้ -
a = 0011 1100
b = 0000 1101
-----------------
a & b = 0000 1100
a | b = 0011 1101
a ^ b = 0011 0001
~ a = 1100 0011
ฟังก์ชัน bin () ในตัวของ Python สามารถใช้เพื่อรับการแสดงเลขฐานสองของจำนวนเต็ม
ตัวดำเนินการ Bitwise ต่อไปนี้รองรับภาษา Python -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
& ไบนารี AND | ตัวดำเนินการคัดลอกบิตไปยังผลลัพธ์หากมีอยู่ในตัวถูกดำเนินการทั้งสอง | (a & b) (หมายถึง 0000 1100) |
| ไบนารีหรือ | จะคัดลอกบิตหากมีอยู่ในตัวถูกดำเนินการอย่างใดอย่างหนึ่ง | (a | b) = 61 (หมายถึง 0011 1101) |
^ ไบนารี XOR | จะคัดลอกบิตหากตั้งค่าไว้ในตัวถูกดำเนินการเดียว แต่ไม่ใช่ทั้งสองอย่าง | (a ^ b) = 49 (หมายถึง 0011 0001) |
~ ส่วนเสริมไบนารี | เป็นยูนารีและมีผลของบิต 'พลิก' | (~ a) = -61 (หมายถึง 1100 0011 ในรูปแบบประกอบของ 2 เนื่องจากเลขฐานสองที่ลงนาม |
<< ไบนารีซ้าย Shift | ค่าของตัวถูกดำเนินการด้านซ้ายจะถูกย้ายไปทางซ้ายตามจำนวนบิตที่ระบุโดยตัวถูกดำเนินการด้านขวา | a << 2 = 240 (หมายถึง 1111 0000) |
>> ไบนารีขวากะ | ค่าของตัวถูกดำเนินการด้านซ้ายจะถูกย้ายไปทางขวาตามจำนวนบิตที่ระบุโดยตัวถูกดำเนินการด้านขวา | a >> 2 = 15 (หมายถึง 0000 1111) |
Python Logical Operators
ตัวดำเนินการทางตรรกะต่อไปนี้ได้รับการสนับสนุนโดยภาษา Python สมมติตัวแปรa ถือ True และตัวแปร b ถือเป็นเท็จแล้ว -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
และตรรกะ AND | หากตัวถูกดำเนินการทั้งสองเป็นจริงเงื่อนไขจะกลายเป็นจริง | (a และ b) เป็นเท็จ |
หรือตรรกะหรือ | หากตัวถูกดำเนินการสองตัวใดตัวหนึ่งไม่ใช่ศูนย์เงื่อนไขจะกลายเป็นจริง | (a หรือ b) เป็น True |
ไม่ใช่ตรรกะไม่ | ใช้เพื่อย้อนกลับสถานะตรรกะของตัวถูกดำเนินการ | ไม่ใช่ (a และ b) เป็น True |
Python Membership Operators
ตัวดำเนินการที่เป็นสมาชิกของ Python จะทดสอบการเป็นสมาชิกตามลำดับเช่นสตริงรายการหรือสิ่งที่เพิ่มขึ้น มีผู้ให้บริการสมาชิกสองรายดังที่อธิบายไว้ด้านล่าง -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
ใน | ประเมินค่าเป็นจริงหากพบตัวแปรในลำดับที่ระบุและเป็นเท็จ | x ใน y จะให้ผลลัพธ์ 1 ถ้า x เป็นสมาชิกของลำดับ y |
ไม่เข้า | ประเมินค่าเป็นจริงหากไม่พบตัวแปรในลำดับที่ระบุและเป็นเท็จ | x ไม่อยู่ใน y ไม่ได้ผลลัพธ์ใน 1 ถ้า x ไม่ใช่สมาชิกของลำดับ y |
Python Identity Operators
ตัวดำเนินการเอกลักษณ์เปรียบเทียบตำแหน่งหน่วยความจำของวัตถุสองชิ้น มีตัวดำเนินการเอกลักษณ์สองตัวดังที่อธิบายไว้ด้านล่าง -
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
คือ | ประเมินค่าเป็นจริงหากตัวแปรด้านใดด้านหนึ่งของตัวดำเนินการชี้ไปที่วัตถุเดียวกันและเป็นเท็จ | x คือ y ที่นี่ is ผลลัพธ์ใน 1 ถ้า id (x) เท่ากับ id (y) |
ไม่ใช่ | ประเมินค่าเป็นเท็จหากตัวแปรด้านใดด้านหนึ่งของตัวดำเนินการชี้ไปที่วัตถุเดียวกันและเป็นจริงเป็นอย่างอื่น | x ไม่ใช่ y ตรงนี้ is not ผลลัพธ์จะเป็น 1 ถ้า id (x) ไม่เท่ากับ id (y) |
ลำดับความสำคัญของตัวดำเนินการ Python
ตารางต่อไปนี้แสดงรายการตัวดำเนินการทั้งหมดจากลำดับความสำคัญสูงสุดไปยังต่ำสุด
แสดงตัวอย่าง
ซีเนียร์ | ตัวดำเนินการและคำอธิบาย |
---|---|
1 | ** การยกกำลัง (ยกกำลัง) |
2 | ~ + - ส่วนเสริมยูนารีบวกและลบ (ชื่อเมธอดสำหรับสองตัวสุดท้ายคือ + @ และ - @) |
3 | * / % // การคูณหารโมดูโลและการแบ่งชั้น |
4 | + - การบวกและการลบ |
5 | >> << เลื่อนไปทางขวาและซ้าย |
6 | & Bitwise 'และ' |
7 | ^ | Bitwise เอกสิทธิ์เฉพาะ `` หรือ '' และ `` หรือ '' ปกติ |
8 | <= < > >= ตัวดำเนินการเปรียบเทียบ |
9 | <> == != ตัวดำเนินการความเท่าเทียมกัน |
10 | = %= /= //= -= += *= **= ตัวดำเนินการมอบหมาย |
11 | is is not ตัวดำเนินการระบุตัวตน |
12 | in not in ผู้ดำเนินการสมาชิก |
13 | not or and ตัวดำเนินการทางตรรกะ |