การใช้ตัวดำเนินการ tilde ใน Python คืออะไร
สิ่งหนึ่งที่ฉันคิดได้คือทำบางสิ่งในทั้งสองด้านของสตริงหรือรายการเช่นตรวจสอบว่าสตริงเป็น palindromic หรือไม่:
def is_palindromic(s):
return all(s[i] == s[~i] for i in range(len(s) / 2))
การใช้งานที่ดีอื่น ๆ
-False==0) มันสับสนเพราะคุณกำลังพูดถึง~และ~False == -1ที่ไม่ได้เป็นเท็จ
__neg__) อาจเป็นไปได้ว่าฉันควรใช้อย่างต่อเนื่องTrueเช่น-True == -1ซึ่งไม่ใช่ -2 หรือFalseหรือเท็จซึ่งเชื่อมโยงกลับไปยัง~Trueผลลัพธ์อย่างชัดเจนยิ่งขึ้นและการลบล้างเลขคณิตของ a boolนั้นแตกต่างจากการปฏิเสธเชิงตรรกะ ฉันไม่ได้พยายามที่จะลึก ฉันเพิ่งจะเน้นการดำเนินงาน 3 ครั้งและวิธีการพิเศษที่บางครั้งอาจทำให้สับสน
~นำมาใช้โดยวิธีพิเศษ__invert__นั้นไม่เกี่ยวข้องกับตัวnotดำเนินการซึ่งจะลบล้างค่าที่ส่งคืนโดย__bool__(หรือ__nonzero__ใน 2.x) ตามหลักเหตุผล นอกจากนี้ยังเป็นที่ไม่เกี่ยวข้องกับผู้ประกอบการปฏิเสธเอกดำเนินการโดย-__neg__ตัวอย่างเช่น~True == -2ซึ่งไม่ใช่Falseหรือเท็จและ-False == 0ซึ่งยังคงเป็นเท็จ