tuple

Զանգվածները հնարավոր է փոփոխել. մենք կարող ենք փոխել դրանց տարրերը, օրինակ՝ l[1] = 100-ով: Սակայն Python-ում կա նաև tuple, որը երաշխավորում է, որ առանձին տարրեր փոփոխության չեն ենթարկվելու: Այն հիմնականում օգտագործվում է փոխկապակցված ինֆորմացիա պահելու համար, այնպես որ, երբ որևէ տարր թարմացվում է, ամբողջ ինֆորմացիան փոխվում է, և, հետևաբար, ամբողջ tuple-ը պետք է թարմացվի:
box = (20, 30, 50)
print('height:', box[0])
print('width:', box[1])
print('depth:', box[2])
Նկատեք, որ այստեղ միակ տարբերությունն այն է, որ կիրառում ենք կլոր փակագծեր () քառակուսի փակագծերի փոխարեն [] (ինչպես նախկինում անում էինք զանգվածներ հայտարարելիս)։ Մենք նույնիսկ կարող ենք բաց թողնել փակագծերը և պարզապես օգտագործել box = 20, 30, 50, ինչը կվերադարձնի ճիշտ նույն tuple-ը:
tuple-ները հնարավոր չէ փոփոխել: Դրանք չունեն append կամ add՝ տարրեր ավելացնելու համար: Եթե փորձենք փոխել տուփի բարձրությունը, պետք է փոխենք ամբողջ tuple-ը.
box = (20, 30, 50)
box[0] = 10         # TypeError: 'tuple' object does not support item assignment
box = (10, 30, 50)  # OK
box = 10, 30, 50    # OK
Կա նաև tuple-ը տարրերի բաժանելու հեշտ ձև.
box = 20, 30, 50
height, width, depth = box
print('height:', height)
print('width:', width)
print('depth:', depth)
height, width, depth = 20, 30, 50
print('height:', height)
print('width:', width)
print('depth:', depth)

Առաջադրանք

Գիտեի՞ք, որ կարող եք կարդալ բազմաթիվ մուտքեր մեկ տողով:
name, height = input(), int(input())
Դա հնարավոր է tuple-ների և արժեքների տրոհման շնորհիվ։
Ձեզանից պահանջվում է կարդալ n հիվանդի վերաբերյալ արված գրանցումները և վիճակագրություն ներկայացնել։ Գրանցումները ներառում են հիվանդների անունները և քաշը: Ձեզ խնդրում են ներկայացնել բոլոր հիվանդների քաշերի միջինը։ Բացի այդ, յուրաքանչյուր հիվանդի համար պետք է նշել՝ արդյոք նրա քաշը միջինից բարձր է, թե ցածր:
Մուտքի առաջին տողը պարունակում է մեկ ամբողջ թիվ՝ n-ը (հիվանդների թիվը): Հաջորդող տողերում նշված են հիվանդի անունը և քաշը:
Ծրագիրը նախ պետք է տպի հիվանդների միջին քաշը, այնուհետև մեկ առ մեկ ամեն հիվանդի անունը, որին կհաջորդի երկու կետ, որից հետո՝ X above average, եթե քաշը միջինից բարձր է կամ հավասար է միջին քաշին, և X below average, եթե այն միջինից ցածր է:
Մուտք
Ելք
3 Anna 50 Bob 80 Simon 71
67 Anna: 17 below average Bob: 13 above average Simon: 4 above average
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue