@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
❤22👍5👏2👨💻2
در زبان برنامهنویسی پایتون، رشتهها یک نوع از داده هستن که به ترتیب از کاراکترها تشکیل شدن و میتونن داخل
'
یا "
قرار بگیرن.len
میتونیم طول یک رشته رو بدست بیاریم.my_string = "Hello, World!"
length = len(my_string)
print(f"String Length: {length}")
my_string = "Hello, World!"
first_char = my_string[0] # حرف اول
substring = my_string[7:12] # بازه از اندیس 7 تا 11
print(f"First Character: {first_char}, Substring: {substring}")
string1 = "Hello"
string2 = "World"
combined_string = string1 + " " + string2 # ترکیب رشتهها
repeated_string = string1 * 3 # تکرار رشته
print(f"Combined: {combined_string}, Repeated: {repeated_string}")
my_string = "Hello, World!"
lowercase = my_string.lower()
uppercase = my_string.upper()
print(f"Lower: {lowercase}, UPPER: {uppercase}")
my_string = "Hello, World!"
new_string = my_string.replace("Hello", "Hi")
print(f"New String: {new_string}")
name = "علی"
age = 25
message = f"سلام، من {name} هستم و {age} سال دارم"
print(message)
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
Google
Google Colab
👍28❤4👨💻4🤔1
❓کوئیز شماره ۱: متد ()title
کدوم گزینه خروجی کد print("abc def".title()) هست؟
کدوم گزینه خروجی کد print("abc def".title()) هست؟
Anonymous Quiz
19%
abc def
63%
Abc Def
13%
Abc def
5%
abc Def
👍19😎4❤1👏1
This media is not supported in your browser
VIEW IN TELEGRAM
استفاده از + : با استفاده از + شما میتونین مقادیر مختلف رو در کنار هم چاپ کنین (Concatenate).
استفاده از f String : شما میتونین متغییرها رو داخل {} قرار بدین. توی پست قبلی ما از این روش استفاده کردیم.
استفاده از Format : توی این روش رشته رو داخل " " قرار میدیم و به جای متغییر {} میذاریم. در آخر با نوشتن format به ترتیب متغییرها رو بهش پاس میدیم.
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤6🔥1
لیستها یکی از ابزارهای قدرتمند در پایتون هستن که امکان ذخیره چندین مقدار در یک متغیر رو ایجاد میکنن و انعطافپذیر و قابل تغییر هستن.
squared_numbers = [x**2 for x in range(10)]
even_numbers = [x for x in range(10) if x % 2 == 0]
print("Squared Numbers: {},\nEven Numbers: {}".format(squared_numbers,even_numbers))
Even Numbers: [0, 2, 4, 6, 8]
numbers = [3, 1, 4, 1, 5, 9, 2]
numbers.sort(); print("Sorted:", numbers) #مرتب کردن لیست
numbers.reverse(); print("Reversed:", numbers) #معکوس کردن
numbers.extend([10, 11, 12]); print("Extended:", numbers) #اضافه کردن عناصر جدید
Reversed: [9, 5, 4, 3, 2, 1, 1]
Extended: [9, 5, 4, 3, 2, 1, 1, 10, 11, 12]
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
element = matrix[1][2]; print(element)
zip
و برای دسترسی به اندیس و مقدار حلقه به صورت همزمان از enumerate
استفاده کنیم. numbers = [1, 2, 3, 4, 5]
names = ['Alice', 'Bob', 'Charlie']
combined = zip(numbers, names)
for index, (num, name) in enumerate(combined):
print(f"Index: {index}, Number: {num}, Name: {name}")
Index: 1, Number: 2, Name: Bob
Index: 2, Number: 3, Name: Charlie
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤4🔥2👨💻1
❓کوئیز شماره ۲: List
چطور میشه با استفاده از List Comprehension لیستی ایجاد کرد که شامل مربعات اعداد فرد از 1 تا 10 باشد؟
چطور میشه با استفاده از List Comprehension لیستی ایجاد کرد که شامل مربعات اعداد فرد از 1 تا 10 باشد؟
Anonymous Quiz
10%
[x**2 for x in range(1, 11)]
81%
[x**2 for x in range(1, 11) if x % 2 == 1]
1%
[x**2 for x in range(1, 6)]
8%
[x for x in range(1, 11) if x % 2 == 1]
👍12❤4😎2
متد ()append: یک عنصر جدید به انتهای لیست اضافه میکنه.
متد ()clear: تمام عناصر موجود در لیست رو پاک میکنه.
متد ()copy: یک کپی سطحی از لیست برمیگردونه یعنی تغییرات در کپی تاثیری بر لیست اصلی نداره.
متد ()count: تعداد دفعاتی که یک عنصر مشخص در لیست تکرار شده رو برمیگردونه.
متد ()extend: عناصر یک لیست رو به انتهای لیست جاری اضافه میکنه. این روش برای ادغام دو لیست باهم کاربرد داره.
متد ()index: اولین عنصر با مقدار مشخص رو برمیگردونه. اگر عنصر موجود نباشه، خطای
ValueError
رخ میده.متد ()insert: یک عنصر رو در موقعیت مشخصی از لیست قرار میده.
متد ()pop: عنصر موجود در موقعیت مشخصی رو حذف میکنه و برمیگردونه. اگر index داده نشه، آخرین عنصر حذف میشه.
متد ()remove: اولین نمونه از عنصر با مقدار مشخص رو حذف میکنه. اگر عنصر موجود نباشه، خطای
ValueError
رخ میده.متد ()reverse: ترتیب عناصر موجود در لیست رو معکوس میکنه.
متد ()sort: عناصر لیست را به صورت صعودی (پیشفرض) یا نزولی مرتب میکنه.
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤5🔥3
ستها در پایتون، مجموعههایی بدون ترتیب و با عناصر منحصربهفرد هستن که به دلیل سرعت بالا در عملیاتهای مجموعهای و حذف دادههای تکراری، یک ابزار کارآمد برای تحلیل دادهها محسوب میشن.
a = {1, 2, 3, 4}
b = {3, 4, 5, 6}
print(a | b) # اجتماع
print(a & b) # تقاطع
print(a - b) # تفاضل
print(a ^ b) # تفاضل متقارن
{3, 4}
{1, 2}
{1, 2, 5, 6}
squared_primes = {x**2 for x in range(10) if is_prime(x)}
print(squared_primes)
isdisjoint
, issubset
, و issuperset
اجازه میدن روابط بین دو set رو بررسی کنیم.c = {1, 2}
d = {1, 2, 3, 4}
print(c.isdisjoint(b)) # بررسی عدم اشتراک
print(c.issubset(d)) # بررسی زیرمجموعه بودن
print(d.issuperset(c)) # بررسی سوپرمجموعه بودن
True
True
add
, update
, و discard
کاربرد دارن که امکان مدیریت انعطافپذیر عناصر رو میدن.e = {1, 2, 3}
e.add(4) # افزودن عنصر
e.update([5, 6, 7]) # افزودن چندین عنصر
e.discard(3) # حذف عنصر
print(e)
f = frozenset([1, 2, 3])
print(f)
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👨💻3❤2🔥1
❓کوئیز شماره ۳: Set
برای انجام کدوم کار باید از متد ()discard به جای ()remove استفاده کنیم؟
برای انجام کدوم کار باید از متد ()discard به جای ()remove استفاده کنیم؟
Anonymous Quiz
26%
وقتی میخوایم یک عنصر رو حذف کنیم و مطمئن هستیم که در Set وجود داره.
49%
وقتی میخوایم یک عنصر رو حذف کنیم و مطمئن نیستیم که در Set وجود داره.
6%
وقتی میخوایم چندین عنصر رو به Set اضافه کنیم.
19%
وقتی میخوایم تمام عناصر Set رو یکباره حذف کنیم.
😎7👍3🔥2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
همون طور که میدونین این سه، سه نوع متفاوت داده در پایتون هستن و با استفاده از روشی که در ویدئو گفته میشه میتونیم خروجی این سه نوع رو باهم ترکیب کنیم
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍2🔥1
دیکشنری در پایتون یه مجموعه نامرتب از جفتهای key-values هست که با کلیدهای منحصربهفرد دسترسی سریع به دادهها رو ممکن میکنه. از کاربردهای دیکشنری در ماشین لرنینگ میشه به ذخیرهسازی پارامترها و تنظیمات مدل، مدیریت و تبدیل دادهها و بهینهسازی هایپرپارامترها اشاره کرد.
nested_dict = {'dictA': {'key_1': 'value_1'},
'dictB': {'key_2': 'value_2'}}
print(nested_dict['dictA']['key_1'])
squared_nums = {x: x**2 for x in range(6)}
print(squared_nums)
data = {'apple': 2, 'banana': 3, 'cherry': 5}
print(data.get('apple')) # بازگرداندن مقدار کلید
print(list(data.keys())) # لیست کلیدها
print(list(data.values())) # لیست مقدارها
print(list(data.items())) # لیست جفتهای کلید-مقدار
['apple', 'banana', 'cherry']
[2, 3, 5]
[('apple', 2), ('banana', 3), ('cherry', 5)]
fruits = {'apple': 2, 'banana': 3}
vegetables = {'carrot': 4, 'beetroot': 1}
combined = {**fruits, **vegetables}
print(combined)
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤4👨💻1
❓کوئیز شماره ۴: دسترسی به مقادیر در دیکشنری
اگه بخوایم به یک کلید غیرموجود در دیکشنری دسترسی پیدا کنیم و بجای خطا، یک مقدار پیشفرض برگرده، از کدوم متد استفاده میکنیم؟
اگه بخوایم به یک کلید غیرموجود در دیکشنری دسترسی پیدا کنیم و بجای خطا، یک مقدار پیشفرض برگرده، از کدوم متد استفاده میکنیم؟
Anonymous Quiz
30%
dict.get(key)
11%
dict[key]
48%
dict.setdefault(key)
11%
dict.find(key)
👍8🔥2🤔2❤1👏1😎1
This media is not supported in your browser
VIEW IN TELEGRAM
توی این ویدئو یادمیگیریم که چطور با استفاده از تابع zip این کار رو انجام بدیم و خروجی رو به صورت یک Tuple داشته باشیم.
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤4🔥2👨💻1
چندتایی در پایتون یک ساختار دادهایه که میتونه چندین مقدار رو در خودش نگه داره. این مقادیر میتونن از هر نوع دادهای باشن و ترتیبشون حفظ میشه. Tuple با استفاده از پرانتز
()
ایجاد میشه و مقادیر داخلش با ,
از هم جدا میشن. ترتیبی که عناصر در Tuple قرار میگیرن هنگام بازیابی اطلاعات حفظ میشه. میشه به هر عنصر داخلش با استفاده از اندیس دسترسی پیدا کرد (Ordered & Indexable) .
my_tuple = (1, "Hello", 3.14)
my_tuple = (1, 2)
try:
my_tuple[1] = 3 # تلاش برای تغییر دومین عنصر تاپل
except TypeError as e:
print("Error:", e) # نمایش پیغام خطا که نشان میدهد تاپلها غیرقابل تغییر هستند
x, y, z = (4, 5, 6)
print(x, y, z)
def min_max(numbers):
return min(numbers), max(numbers)
min_num, max_num = min_max([1, 2, 3, 4, 5])
print(min_num, max_num)
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7👨💻4❤3🔥1
❓کوئیز شماره ۴: Tuple
با فرض اینکه t = (1, 2, 3)، حاصل t * 2 کدوم گزینهست؟
با فرض اینکه t = (1, 2, 3)، حاصل t * 2 کدوم گزینهست؟
Anonymous Quiz
7%
(1, 2, 3, 2, 4, 6)
33%
TypeError
33%
(2, 4, 6)
27%
(1, 2, 3, 1, 2, 3)
👍8😎5❤3🔥1🤔1
یک نکته مرتبط در استفاده از Tuple در علم داده و یادگیری ماشین، کاربردشون در unpacking یا برگردوندن چندین مقدار از یک تابعست. این مورد وقتی کاربرد داره که نیاز باشه تابع بیش از یک خروجی داشته باشه.
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤3🤔2🔥1
در پایتون، دادههای باینری یا Boolean Type، دو مقدار
True
و False
رو میپذیرن که برای بیان درستی یا نادرست بودن یک عبارت به کاربرد دارن. این دادهها در عملیاتهای منطقی، کنترل جریان برنامه و تصمیمگیریهای شرطی اهمیت دارن.and
, or
, و not
هست که امکان ارزیابی ترکیبی از شرطها رو فراهم میکنه.x = True
y = False
print(x and y) # عملگر and
print(x or y) # عملگر or
print(not x) # عملگر not
True
False
while
با یک شرط Boolean.count = 0
while count < 5:
print(count)
count += 1
all()
و any()
برای بررسی شرایط استفاده کرد، که به ترتیب بررسی میکنن آیا تمام عناصر True
هستن یا حداقل یکیشون True
هست.conditions = [True, False, True]
print(all(conditions)) # بررسی همه شرایط
print(any(conditions)) # بررسی حداقل یک شرط
True
filter()
نمونهای از این کاربرد این موضوعه.numbers = [1, 2, 3, 4, 5]
even = filter(lambda x: x % 2 == 0, numbers)
print(list(even))
x = 10
y = 20
print("x is greater" if x > y else "y is greater or equal")
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👨💻3🔥2
❓کوئیز شماره ۶: Boolean Type
اگه list1 = [0, 1, 2] و list2 = [0, 1, 2] باشه، عبارت list1 is list2 چه مقداری برمیگردونه؟
اگه list1 = [0, 1, 2] و list2 = [0, 1, 2] باشه، عبارت list1 is list2 چه مقداری برمیگردونه؟
Anonymous Quiz
57%
True
29%
False
2%
None
12%
SyntaxError
👍10😎6🤔4