برنامه نویسی

Day-27 Tuples, Set

تاپل ها:

تاپل ها ترتیب عناصر را همانطور که تعریف می کنند حفظ می کنند.
هنگامی که یک تاپل ایجاد می شود، محتویات آن قابل تغییر نیست.
مانند لیست ها، تاپل ها می توانند حاوی مقادیر تکراری باشند.
تاپل ها می توانند انواع ترکیبی از داده ها، از جمله تاپل های دیگر، لیست ها، اعداد صحیح، رشته ها و غیره را ذخیره کنند.
شما می توانید به عناصر چندگانه با شاخص آنها دسترسی داشته باشید که از 0 شروع می شود.
تاپل با ().

t = (10,20,30)
print
print(type

for num in t:
    print(num)

total = 0
for num in t:
    total+=num
print(total)

t[0] = 100
(10, 20, 30)
<class 'tuple'>
10
20
30
60
TypeError: 'tuple' object does not support item assignment

بسته بندی تاپل:

ایجاد یک تاپل با گروه بندی چندین عنصر با هم، به عنوان مثال، my_tuple = (1، 2، 3).
باز کردن بسته بندی تاپل:

استخراج عناصر یک تاپل به متغیرهای جداگانه، به عنوان مثال، a، b، c = my_tuple.

#Tuple Packing
t = 10,20,30
print

#Tuple Unpacking
no1, no2, no3 = t
print(no1)
print(no2)
print(no3)

(10, 20, 30)
10
20
30
t = 10,20,30,40,50,60
print(t[:2])
(10, 20)
t1 = 10,20,30
t2 = 40,50,60
print(t1+t2)

print(t1*3)

print(10 in t1)
print(10 not in t1)
(10, 20, 30, 40, 50, 60)
(10, 20, 30, 10, 20, 30, 10, 20, 30)
True
False
t1 = 10,20,30,40,50,60,10

print(t1.count(10))
print(t1.index(20))
print(sorted(t1))
print(sorted(t1,reverse=True))

2
1
[10, 10, 20, 30, 40, 50, 60]
[60, 50, 40, 30, 20, 10, 10]
t = ((10,20,30), (40,50,60))
print
print(t[0])
print(t[1])

print(t[0][0])
print(t[1][2])

t = ([10,20,30],[40,50,60])

print(t[0])
print(t[0][2])
((10, 20, 30), (40, 50, 60))
(10, 20, 30)
(40, 50, 60)
10
60
[10, 20, 30]
30

برنامه ای بنویسید تا پیدا کنید
الف) فهرست دوم
ب) کل عاقلانه را فهرست کنید
ج) فقط عنصر دوم را از هر لیست چاپ کنید.
داده = ([10,20,30]،[40,50,60]،[70,80,90])

data = ([10,20,30],[40,50,60],[70,80,90])

#Second List
print(data[1])
#List wise total
for inner in data:
    total = 0
    for num,index in enumerate(inner):
        total+=index
    print(total,end=' ')
#Print Only second element from each list.
print()
i=0
while i<len(data):
    print(data[i][1],end=' ')
    i+=1

[40, 50, 60]
60,150,240,
20 50 80

eval():

eval() یک تابع داخلی پایتون است که برای ارزیابی یک رشته به عنوان عبارت پایتون و برگرداندن نتیجه استفاده می شود.

بدون درک چندگانه.

t = eval(input("Enter tuple Elements: "))
print(type
print

Enter tuple Elements: 10,20,30
<class 'tuple'>
(10, 20, 30)

تابع () next:

تابع next() آیتم بعدی را در یک تکرار کننده برمی گرداند.


t = (no for no in range(1,11))
print(next
print(next
print(next
print(next
1
2
3
4

*تفاوت بین 'is' و '==': *

'==' به عنوان عملگر برابری شناخته می شود.
“is” به عنوان عملگر هویت شناخته می شود.
== ارزش را بررسی می کند.
حافظه را بررسی می کند.
عملگر == به ما کمک می کند تا برابری اشیاء را با هم مقایسه کنیم.
عملگر is به ما کمک می کند بررسی کنیم که آیا متغیرهای مختلف به سمت یک شی مشابه در حافظه اشاره می کنند یا خیر.

مثال:
برای لیست:

l1 = [10,20,30]
l2 = l1
print(id(l1))
print(id(l2))
print(l1 == l2)
print(l1 is l2)

l2 = list(l1)
print(id(l2))
print(l1 == l2)
print(l1 is l2)
124653538036544
124653538036544
True
True
124653536481408
True
False

برای تاپل:

l1 = (10,20,30)
l2 = l1
print(id(l1))
print(id(l2))
print(l1 == l2)
print(l1 is l2)

l2 = tuple(l1)
print(id(l2))
print(l1 == l2)
print(l1 is l2)
130906053714624
130906053714624
True
True
130906053714624
True
True

تاپل در مقابل لیست:

تاپل ها اشیای تغییرناپذیر و لیست ها اشیایی قابل تغییر هستند.
تاپل ها از حافظه کمتری استفاده می کنند و سریعتر از لیست ها دسترسی دارند.
از آنجایی که تاپل ها تغییر ناپذیر هستند، اندازه از لیست کوچکتر خواهد بود.

مثال:

import sys
l = [10,20,30,40]
t = (10,20,30,40)
print(sys.getsizeof(l))
print(sys.getsizeof

88
72

مجموعه:

مجموعه ها برای ذخیره چندین آیتم در یک متغیر استفاده می شوند.
مجموعه مجموعه‌ای است که مرتب، تغییرناپذیر (غیرقابل تغییر) و فهرست نشده است.
موارد تکراری را نادیده می گیرد.

روش های تنظیم:
1) اتحادیه ():
(|) مجموعه ای حاوی اتحاد مجموعه ها را برگردانید.

2)تقاطع():(&) مجموعه ای را برمی گرداند، یعنی محل تلاقی دو مجموعه دیگر.

3)تفاوت():(-) مجموعه ای حاوی تفاوت بین دو یا چند مجموعه را برمی گرداند.

4)تفاوت_متقارن():(^) مجموعه ای را با تفاوت های متقارن دو مجموعه برمی گرداند.

مثال: 1

s1 = {10,20,30,40}
s2 = {30,40,50,60}
print(s1.union(s2))
print(s1 | s2)

print(s1.intersection(s2))
print(s1 & s2)

print(s1.difference(s2))
print(s1 - s2)

print(s1.symmetric_difference(s2))
print(s1 ^ s2)
{40, 10, 50, 20, 60, 30}
{40, 10, 50, 20, 60, 30}
{40, 30}
{40, 30}
{10, 20}
{10, 20}
{10, 50, 20, 60}
{10, 50, 20, 60}

مثال: 2

s1 = {10,20}
s2 = {20,30}
s3 = {30,40}

print(s1.union(s2,s3))

result = s1 | s2 | s3
print(result)

{20, 40, 10, 30}
{20, 40, 10, 30}

حذف ():

متد discard() یک عنصر را در صورت وجود از مجموعه حذف می کند. اگر عنصر موجود نباشد، کاری انجام نمی دهد (هیچ خطایی مطرح نمی شود).
حذف ():

متد remove() یک عنصر را در صورت وجود از مجموعه حذف می کند. اگر عنصر موجود نباشد، یک KeyError ایجاد می کند.

s = {"abcd", 1.2, True, 500,500}
s.remove(10)
print(s)

s.discard(10)
print(s)
KeyError: 10
{'abcd', 1.2, 500, True}

وظایف:

match1 = {“sanju”، “virat”، “ashwin”، “rohit”}
match2 = {“dhoni”، “virat”، “bumrah”، “سراج”}

موارد زیر را بیابید:
الف) هر دو match1، match2
ب) در Match1 بازی کرد اما در Match2 نه
ج) در Match2 بازی کرد اما در مسابقه 1 بازی نکرد
د) فقط در یک مسابقه بازی کرد

match1 = {"sanju", "virat", "ashwin", "rohit"}
match2 = {"dhoni", "virat", "bumrah", "siraj"}
print(match1 & match2)
print(match1 - match2)
print(match2 - match1)
print(match1 ^ match2)
{'virat'}
{'sanju', 'rohit', 'ashwin'}
{'dhoni', 'siraj', 'bumrah'}
{'sanju', 'bumrah', 'rohit', 'siraj', 'ashwin', 'dhoni'}

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا