fb pixel

dict comprehension

Բառարաններ հեշտությամբ ստեղծելու ձևերից մեկը comprehension-ն է: list comprehension-ի նման, հնարավոր է բառարան ստեղծել՝ ներդրված ցիկլով.
squares = {n: n**2 for n in range(1, 11)}
print(squares)
# {1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81, 10: 100}
Ճիշտ այնպես, ինչպես list կամ set comprehension-ի դեպքում, զտման կամ պայմանական բոլոր կանոնները կիրառվում են նաև dictionary comprehension-ի համար:
names = ['Bob', 'Anna', 'Charles']
surnames = ['Brown', 'Kennedy', 'Jackson']

people = {names[i]: surnames[i] for i in range(len(names)) if names[i] != 'Anna'}
print(people)
# {'Bob': 'Brown', 'Charles': 'Jackson'}

Առաջադրանք

Տրված է n թիվ, որոնք բաժանված են բացատով, ձեզ խնդրում են ստեղծել բառարան, որը կնկարագրի թիվը իր խորանարդով՝ միաժամանակ հեռացնելով բոլոր թվերը, որոնց քառակուսին ավարտվում է 6-ով:
Մուտքի միակ տողը պարունակում է բացատով բաժանված թվեր:
Ծրագիրը պետք է տպի թվեր, որոնք բավարարում են պայմանը իրենց խորանարդով:
Մուտք
Ելք
5 4 8 9 6 2 0 -4
5 125 8 512 9 729 2 8 0 0
Կարո՞ղ եք դա լուծել մեկ տողով։😎
 
To check your solution you need to sign in
Sign in to continue