سلام مشکل کد زیر چی هست؟
میخوام از این لیست اعداد زوج و فرد جداشن
```
num = [1,2,3,4,5,6,7,8,9,10,11,12,13,14]
odd = []
even = [sum if sum % 2 == 0 else odd[sum] for sum in num]
print(even)
print(odd)
ارور:
Traceback (most recent call last):
File "/home/sadra/Education/python/list.py", line 3, in <module>
even = [sum if sum % 2 == 0 else odd[sum] for sum in num]
File "/home/sadra/Education/python/list.py", line 3, in <listcomp>
even = [sum if sum % 2 == 0 else odd[sum] for sum in num]
IndexError: list index out of range
اولا که sum یک تابع از قبل تعریف شده در پایتون هست و نباید به عنوان اسم متغیر ازش استفاده کنی
دوما برای جدا سازی اعداد زوج و فرد نمیتونی از یک حلقه و شرط تک خطی استفاده کنی چون در هر صورت else یک خروجی باید برگردونه وگرنه None قرار میگیره
سوما ارورت برای زمانیه که شما در قسمت else
یک اندیس از لیست odd صدا زدی -درصورتی که این لیست خالیه
همونطور ک میبینی ارور اندیس خارج از بازه بهت داده (list out of range)
سلام خسته نباشید
برای این کار میتونی اینو تست کنی
list1 = [10, 21, 4, 45, 66, 93, 1]
even_count, odd_count = 0, 0
# iterating each number in list
for num in list1:
# checking condition
if num % 2 == 0:
even_count += 1
else:
odd_count += 1
print("Even numbers in the list: ", even_count)
print("Odd numbers in the list: ", odd_count)
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟