ในส่วนนี้ เราจะสลับสองตัวแปรในบรรทัดเดียวโดยใช้ python วิธีมาตรฐานในการสลับสองตัวแปรในไพ ธ อนนั้นง่ายและสะดวกมาก-
>>> a = 20;b=30 >>> a 20 >>> b 30 >>> #Swap two variable in one line >>> a, b = b, a >>> a 30 >>> b 20
โค้ดด้านบนสร้างค่าสลับของ a และ b
คำอธิบาย
Python ประเมินนิพจน์จากซ้ายไปขวา อย่างไรก็ตาม ขณะประเมินงาน ทางขวามือจะได้รับการประเมินก่อนทางซ้ายมือ
นั่นหมายถึงสิ่งต่อไปนี้สำหรับนิพจน์ a, b =b, a
-
ทางด้านขวามือ 'b, a' ถูกประเมิน กล่าวคือ ทูเพิลของสององค์ประกอบถูกสร้างขึ้นในหน่วยความจำ ทั้งสององค์ประกอบคืออ็อบเจ็กต์ที่กำหนดโดยตัวระบุ b และ a ที่มีอยู่ก่อนพบคำสั่งระหว่างการดำเนินการของโปรแกรม
-
เมื่อสร้าง tuple แล้ว แต่ยังไม่มีการมอบหมายวัตถุ tuple นี้ แต่นั่นไม่ใช่ปัญหา เนื่องจาก python รู้ภายในว่าอยู่ที่ไหน
-
จากนั้นทางซ้ายมือจะถูกประเมิน นั่นคือ- ทูเปิลที่เก็บไว้ในหน่วยความจำถูกกำหนดให้กับทางซ้ายมือ เนื่องจากด้านซ้ายมือประกอบด้วยตัวระบุสองตัว a และ b ทูเปิลถูกแยกออกเพื่อให้ตัวระบุแรก a(ด้านซ้าย) ถูกกำหนดโดยองค์ประกอบแรกของทูเปิล (.i.e. b) และตัวระบุที่สอง b ถูกกำหนดโดยองค์ประกอบที่สองของ tuple (.i.e. a)
กล่าวโดยย่อ นิพจน์:“ a, b =b, a” สิทธิ์แรกถูกกำหนดให้ซ้ายที่หนึ่งและขวาที่สองถูกกำหนดให้เป็นวินาทีทางซ้ายพร้อมกันดังนั้นสลับค่าของ a และ b