دوره ویژه مقدماتی پایتون – Telegram
دوره ویژه مقدماتی پایتون
436 subscribers
248 photos
4 videos
250 links
Download Telegram
خروجی کد زیر چیست ؟
fib = {1: 1, 2: 1, 3: 2, 4: 3}‎
print(fib.get(4, 0) + fib.get(7, 5))

1️⃣: 4
️0%(0)
2️⃣: 7
️0%(0)
3️⃣: 5
️0%(0)
4️⃣: 8
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(36)

👥: 36شرکت در نظر سنجی
✍️تاپل ها (Tuples)

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

words = ("spam", "eggs", "sausages",)

💡برای دسترسی به تاپل ها می توانیم از اندیس هایشان استفاده کنیم، درست مثل لیست ها.
print(words[0])

📌اگر بخواهیم یک مقدار تاپل را دوباره وارد کنیم با خطای TypeError رو به رو خواهیم شد.

words[1] = "cheese"

خروجی :
>>>
TypeError: 'tuple' object does not support item assignment
>>>

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
به ترتیب از چپ به راست از کدام برای ساخت لیست، دیکشنری، و تاپل استفاده می شود؟

1️⃣: {} , (), []
️0%(0)
2️⃣: (), [], {}
️0%(0)
3️⃣: [], {}, ()
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(44)

👥: 44شرکت در نظر سنجی
✍️تاپل ها - (قسمت دوم)

تاپل ها میتوانند بدون پرانتز هم ساخته شوند ولی مقادیر باید با کاما از یکدیگر جداشوند.

my_tuple = "one", "two", "three"
print(my_tuple[0])

خروجی :
>>>
one
>>>

📌یک تاپل خالی، به این صورت ساخته میشود:
tpl = ()

💡تاپل ها از لیست ها سریع تر هستند، اما نمی توانند تغییر کنند.

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
نتیجه کد زیر چیست ؟
tuple = (1, (1, 2, 3))‎
print(tuple[1])

1️⃣: ((1, 2, 3))
️0%(0)
2️⃣: 1
️0%(0)
3️⃣: (1 , 2, 3)
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(45)

👥: 45شرکت در نظر سنجی
✍️برش های لیست (list slices)

برش های لیستی یک راه پیشرفته تر برای بازیابی مقادیر از لیست هستند. برای ایجاد کردن برش لیست، از اندیس مقادیر و نماد : استفاده میکنیم، که یک لیست جدید ایجاد می کند که شامل قسمتی بین اندیس های داده شده، در همان لیست قبلی است.

squares = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
print(squares[2:6])
print(squares[3:8])
print(squares[0:1])

خروجی :
>>>
[4, 9, 16, 25]
[9, 16, 25, 36, 49]
[0]
>>>

📌مانند ورودی های تابع range، اولین اندیس در برش لیست وجود دارد اما اندیس دوم وجود ندارد.

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
نتیجه کد زیر چیست ؟
sqs = [0, 1, 4, 9, 16, 25, 36, 49, 64]‎
print(sqs[4:7])

1️⃣: [25,36,49]
️0%(0)
2️⃣: [16,25,36,49]
️0%(0)
3️⃣: [16,25,36]
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(36)

👥: 36شرکت در نظر سنجی
✍️برش لیست ها - (قسمت دوم)

اگر عدد اول در برش لیست ذکر نشده باشد، از اول لیست در نظر گرفته میشود و اگر عدد دوم ذکر نشده باشد، انتهای لیست را در نظر میگیرد.

squares = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
print(squares[:7])
print(squares[7:])

خروجی :
>>>
[0, 1, 4, 9, 16, 25, 36]
[49, 64, 81]
>>>

📌برش می تواند بر روی تاپل ها هم اعمال شود.

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
کد گزینه صحیح است.
میخواهیم دو عنصر اول لیست زیر را مشاهده کنیم:
list = ["a", "b", "c", "d"]‎

1️⃣: a = list[0:1]
️0%(0)
2️⃣: a = list(1:2)
️0%(0)
3️⃣: a = list[0:2]
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(36)

👥: 36شرکت در نظر سنجی
برش لیست ها - (قسمت سوم)

برش لیست ها میتوانند یک آرگومان سومی نیز داشته باشند، که تعداد گام ها را در مشخص میکند به مثال توجه کنید .

squares = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
print(squares[::2])
print(squares[2:8:3])

خروجی :
>>>
[0, 4, 16, 36, 64]
[4, 25]
>>>

📌[2:8:3] شامل اعداد بین اندیس 2 و 8 است، با فاصله ی 3.

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
نتیجه کد زیر چیست ؟
sqs = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]‎
print(sqs[1::4])

1️⃣: خطا رخ داد
️0%(0)
2️⃣: [1 , 25]
️0%(0)
3️⃣: [1,25,81]
️||||||||||||||||||||||||||||||||||||||||||||||||97%(34)
4️⃣: [0,1,4]
️|3%(1)

👥: 35شرکت در نظر سنجی
✍️برش لیست ها - (قسمت چهارم)

مقادیر منفی می توانند در برش لیستها وجود داشته باشند. روش کار آن به این صورت است که اگر در اندیس اول یا دوم برش لیست عدد منفی قرار بگیرد، برای رسیدن به آن اندیس از انتهای لیست میشماریم.

squares = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
print(squares[1:-1])

خروجی :
>>>
[1, 4, 9, 16, 25, 36, 49, 64]
>>>

📌اگر مقدار منفی برای گام مورد استفاده قرار گیرد لیست را برعکس میکند.

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
حاصل کد زیر چیست ؟
sqs = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
print(sqs[7:5:-1])

1️⃣: [49,36]
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(35)
2️⃣: [49]
️0%(0)
3️⃣: []
️0%(0)

👥: 35شرکت در نظر سنجی
✍️list comprehensions

این روش یک راه معروف برای ساخت لیست هایی است که از یک قاعده ساده پیروی می کنند.

# a list comprehension
cubes = [i**3 for i in range(5)]

print(cubes)

خروجی :
>>>
[0, 1, 8, 27, 64]
>>>

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
کد زیر چه چیزی را چاپ میکند ؟
nums = [i*2 for i in range(10)]‎

1️⃣: اعداد زوج بین 0 تا 20
️||5%(2)
2️⃣: تمامی اعداد بین 0 تا 20
️|3%(1)
3️⃣: اعداد زوج بین 0 تا 18
️||||||||||||||||||||||||||||||||||||||||||||||92%(34)

👥: 37شرکت در نظر سنجی
✍️list comprehensions (2)

همچنین میتوانید list comprehension ها را با یک دستور شرطی if ترکیب کنید که یک شرط را بر روی مقادیر لیست اعمال کنید.

evens=[i**2 for i in range(10) if i**2 % 2 == 0]

print(evens)

خروجی :
>>>
[0, 4, 16, 36, 64]
>>>

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
گزینه صحیح را انتخاب کنید : اعداد مضرب 3 تا 20 را نمایش دهید.

1️⃣: a = [ i for i in range(20) if i % 3 ==0 ]
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(34)
2️⃣: a = ( i for i in range(10) if i % 3 == 0)
️0%(0)
3️⃣: a = [i for in range(20) if i % 3 == 0]
️0%(0)

👥: 34شرکت در نظر سنجی
برای ساخت یک لیست در یک محدوده ی بسیار گسترده، باعث ایجاد MemoryError می شود. در زیر مثالی نشان داده شده است که list comprehension باعث ایجاد اجرا در خارج از محدوده ی حافظه می شود.

even = [2*i for i in range(10**100)]

خروجی :
>>>
MemoryError
>>>

📌این مشکل با generator ها حل شد.

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
✍️اعمال format در رشته ها

تا اینجا ، رشته و غیر رشته را ترکیب کردیم ، و شما غیر رشته را به رشته تبدیل کردید و به هم اضافه کردید. format کردن رشته، یک راه قوی تر برای جاسازی غیر رشته ها درون رشته ها است.

متد Format در رشته ها، اعداد را درون رشته ها جایگزاری می کند.

# string formatting
nums = [4, 5, 6]
msg = "Numbers: {0} {1} {2}". format(nums[0], nums[1], nums[2])
print(msg)

خروجی :
>>>
Numbers: 4 5 6
>>>

📌هر ورودی تابع format، در جای درست خودش در رشته جایگزاری می شود، که با {} نمایش داده می شود.

بعد مطالعه متن فوق به سوال زیر لطفا پاسخ بدهید:

🗂 مرکز آموزش پایتون

🆔 : @pythonchallenge
خروجی زیر چیست ؟
print("{0}{1}{0}".format("abra", "cad"))‎

1️⃣: abracadabra
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(40)
2️⃣: abracad
️0%(0)
3️⃣: cadabraabra
️0%(0)

👥: 40شرکت در نظر سنجی
خروجی کد زیر چیست ؟
str="{c}, {b}, {a}".format(a=5, b=9, c=7)‎
print(str)

1️⃣: 9 , 7, 5
️0%(0)
2️⃣: 7, 9, 5
️||||||||||||||||||||||||||||||||||||||||||||||||||100%(36)
3️⃣: 5, 9, 7
️0%(0)

👥: 36شرکت در نظر سنجی