পাইথনে টিলড অপারেটরের ব্যবহার কী?
আমি যা ভাবতে পারি তা হ'ল স্ট্রিং বা তালিকার উভয় পক্ষের কিছু করা যেমন স্ট্রিংটি প্যালিনড্রোমিক কিনা তা পরীক্ষা করে দেখুন:
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
, যা -২ বা False
মিথ্যা নয়, যা এটিকে আরও পরিষ্কারভাবে ~True
ফলাফলের সাথে আবার যুক্ত করে এবং এটিও যে গাণিতিক অবজ্ঞা bool
তার যৌক্তিক অবজ্ঞা থেকে পৃথক। আমি গভীর হওয়ার চেষ্টা করছিলাম না। আমি কেবল 3 টি অপারেশন এবং অন্তর্নিহিত বিশেষ পদ্ধতিগুলি হাইলাইট করছিলাম যা কখনও কখনও বিভ্রান্ত হয়।
~
বিশেষ পদ্ধতি দ্বারা প্রয়োগ করা ইউনিারি পরিপূরক অপারেটর অপারেটরের__invert__
সাথে সম্পর্কিত নয়not
, যা যুক্তিযুক্তভাবে প্রত্যাবর্তিত মানটিকে__bool__
(বা__nonzero__
2.x) অবহেলা করে। এটি-
বাস্তবায়িত অ্যানারি নেগ্রেশন অপারেটরের সাথেও সম্পর্কিত নয়__neg__
। উদাহরণস্বরূপ~True == -2
, যা কোনটিFalse
মিথ্যা নয় এবং-False == 0
যা এখনও মিথ্যা।