শর্তাধীনের ভিত্তিতে আইটেমের তালিকাটিকে একাধিক তালিকায় বিভক্ত করার জন্য নান্দনিকভাবে এবং পারফরম্যান্সের দৃষ্টিভঙ্গি থেকে সবচেয়ে ভাল উপায় কী? সমতুল্য:
good = [x for x in mylist if x in goodvals]
bad = [x for x in mylist if x not in goodvals]
এটি করার জন্য আরও কি মার্জিত উপায় আছে?
আপডেট: আমি কী করতে চাইছি তা আরও ভালভাবে বোঝাতে এখানে আসল ব্যবহারের কেস:
# files looks like: [ ('file1.jpg', 33L, '.jpg'), ('file2.avi', 999L, '.avi'), ... ]
IMAGE_TYPES = ('.jpg','.jpeg','.gif','.bmp','.png')
images = [f for f in files if f[2].lower() in IMAGE_TYPES]
anims = [f for f in files if f[2].lower() not in IMAGE_TYPES]
str.split() করতে সমতুল্য তালিকার সন্ধান করতে এখানে অবতরণ করেছি । উদাহরণস্বরূপ , তালিকার উপাদানগুলিকে বিভাগ অনুসারে বিভক্ত করার বিপরীতে । split([1,2,3,4,5,3,6], 3) -> ([1,2],[4,5],[6])
IMAGE_TYPES = set('.jpg','.jpeg','.gif','.bmp','.png')। n (1) এর পরিবর্তে এন (ও / 2) এর পরিবর্তে পাঠযোগ্যতার কোনও পার্থক্য নেই।