در این دوره، زبان برنامه نویسی پایتون را با تمرینات برنامه نویسی زمان واقعی در Jupyter Notebook به زبانی بسیار آسان و قابل درک یاد خواهید گرفت.
اول از همه، نحوه نصب و شروع استفاده از Jupyter Notebook را خواهید دید.
سپس با موضوعات مختلف مفید پایتون شروع می کنیم.
بیایید نگاهی به برخی از بخشهای نظری بیندازیم (که در سخنرانیهای ویدیویی پوشش داده نشده است).
مقدمه -
Python یک زبان برنامه نویسی سطح بالا است که از دستورالعمل ها برای آموزش نحوه انجام یک کار به رایانه استفاده می کند. Python یک زبان برنامه نویسی قدرتمند و آسان برای یادگیری است.
زبانی که به زبان انسان نزدیکتر است (مانند انگلیسی) به عنوان زبان سطح بالا شناخته می شود.
Python یک رویکرد آسان برای برنامه نویسی شی گرا ارائه می دهد.
شی گرا رویکردی است که برای نوشتن برنامه ها استفاده می شود.
Python یک زبان رایگان و منبع باز است، یعنی ما میتوانیم کد منبع اسکریپتهای Python را بخوانیم، تغییر دهیم و توزیع کنیم.
این توسط Guido van Rossum توسعه داده شد و در سال 1991 منتشر شد.
پایتون کاربرد خود را در حوزه های مختلف پیدا می کند. Python برای ایجاد برنامه های کاربردی وب، استفاده در توسعه بازی، برای ایجاد برنامه های دسکتاپ، در یادگیری ماشین و علم داده استفاده می شود.
Python چگونه کار می کند؟ -
ما دستورالعملها را به زبان پایتون مینویسیم.
Python یک زبان تفسیری است، بنابراین نیازی به کامپایل آن نیست.
برنامه های پایتون مستقیماً از طریق کد منبع اجرا می شوند (اجرا می شوند). کد منبع به بایت کد میانی تبدیل می شود و سپس بایت کد به صورت داخلی توسط مترجم پایتون به زبان مادری رایانه (یعنی زبان ماشین) تبدیل می شود. کد اجرا می شود و خروجی ارائه می شود.
کد منبع پایتون بایت کد میانی کد زبان ماشین اجرا شد
برنامه چیست؟ -
برنامه مجموعهای از دستورالعملها است که به رایانه میگوید کار خاصی را انجام دهد. زبان برنامه نویسی زبانی است که برای ایجاد برنامه ها استفاده می شود.
به عنوان مثال وقتی روی دکمه Play در پخش کننده رسانه کلیک می کنیم، برنامه ای در پشت صحنه کار می کند که به رایانه می گوید موسیقی را روشن کند.
یک تابع داخلی تابعی است که از پیش تعریف شده است و می تواند مستقیماً استفاده شود. به عنوان مثال. print()
نظرات، تکههایی از کد هستند که توسط مفسر پایتون نادیده گرفته میشوند. نظرات برای درک آسان کد منبع توسط افراد دیگر استفاده می شود. پایتون از نظرات تک خطی پشتیبانی می کند به این معنی که آنها می توانند فقط یک خط را پوشش دهند.
موضوعات مختلف توضیح داده شده در سخنرانی های ویدئویی این دوره با مثال به شرح زیر است -
1. متغیرها
a = 2، b = 1.2، c = "Ram"، d = lambda ("هر تابع")
# متغیر برای ذخیره مقادیر استفاده می شود. مقادیر ذخیره شده در متغیرها را می توان بعداً در برنامه ها استفاده کرد. ما می توانیم آنها را با مراجعه به نام متغیرها بازیابی کنیم.
2. انواع داده ها در پایتون
عدد صحیح (int)، شناور، رشته (str)، فهرست، چندتایی، مجموعه، دیکشنری
3. رشته - رشته یک سری کاراکتر است که با نقل قول های تک یا دو احاطه شده است. به عنوان مثال. "Hello", "Hello999", "999".
4. LIST
[ int/float/str ] à A = [ 1 , 2 , 3.4 , 3.4, ‘a’ , ‘bcd’ ]
à مجموعه ای از انواع داده، قابل تغییر : مقادیر قابل تغییر هستند، مرتب شده: ترتیب مقادیر همانطور که هست خواهد بود، قابل تغییر، مقادیر تکراری را مجاز می کند.
5. TUPLE
( int/float/str ) à B = (1 , 2 , 3.4 , 3.4 , 'a' , 'bcd')
àImmutable: مقادیر را نمی توان تغییر داد، مرتب شده: ترتیب ارزش ها همانطور که هست خواهد بود، غیرقابل تغییر، داده های ناهمگن، مقادیر تکراری را می دهد.
6. SET
{ int/float/str } à C = { 1 , 2 , 3.4 , 5.6 , 'a' , 'bcd' }
مقادیر را نمیتوان تغییر داد، اما مقادیر جدیدی را میتوان اضافه کرد، نامرتب: ترتیب مقادیر ممکن است تغییر کند، موارد را به ترتیب صعودی مرتب کنید، مقادیر تکراری را مجاز نمیداند، فهرستبندی نشده است.
7. دیکشنری
{ کلید : مقدار } à D = { K1 : 1 , K2 : 2 , K3 : 3.4 , K4 : 5.6 , K5 : 'ab' , K6 : 'bcd' }
à قابل تغییر، نامرتب، کلیدهای تکراری را مجاز نمیداند، فهرستشده، کلیدها باید تغییرناپذیر منحصربهفرد باشند.
8. CNCATENATION - ترکیب رشته ها
first = "داده"
آخرین = "علم"
new = first + ' ' + آخرین + ' رشته ترکیبی است'
9. "\n" - برای خط جدید بعدی
print("نام من است"، "\n" , "شهر من است "، "\n" "کشور من است")
print('Delhi') , print('') , print('Noida') # برای ایجاد فاصله یک خط بین دو رشته.
10. LIST FUNCTONها
<پس از تایپ نام لیست (در اینجا A) دکمه "Tab" را از صفحه کلید فشار دهید تا عملکردهای موجود نشان داده شود
A.append(55) - برای افزودن یک مقدار جدید در انتهای لیست.
A.clear( ) - برای پاک کردن/حذف/خالی کردن یک لیست.
B = A.copy( ) - برای ایجاد یک کپی از لیست.
A.count(5) - برای شمارش تعداد دفعاتی که یک مقدار رخ می دهد.
A.extend(c) - برای افزودن یک لیست جدید به لیست موجود.
A.index(7) - برای نشان دادن شاخص یک مقدار. # A.index(value، start_index، stop_index)
A.insert(3,66) - برای درج یک مقدار جدید در یک موقعیت معین.
A.pop(3) - برای حذف یک مقدار با کمک شاخص. # A.pop( )
A.remove( 55) - برای حذف یک مقدار از لیست.
A.reverse( ) - برای معکوس کردن لیست.
A.sort( ) - برای مرتب کردن لیست. # A.sort(reverse=True)
del A[ 1 : 4 ] – برای حذف برخی موارد از لیست.
type(A) – برای دیدن نوع.
الحاق فهرست - A = [1,2,3,4] , B = [5,6,7,8] ; C = A+B = [1،2،3،4،5،6،7،8]
11. تابع TUPLE
T.count(5) - برای شمارش تعداد دفعاتی که یک مقدار رخ می دهد.
T.index(7) - برای نشان دادن شاخص یک مقدار.
12. SET FUNCTONs
S.add(5) - برای افزودن یک مقدار جدید 5 در مجموعه.
S.clear() - برای پاک کردن تمام عناصر مجموعه.
S.copy() - برای کپی کردن یک مجموعه.
S1.difference(S2) – S1-S2 - فقط عناصر مجموعه S1 را نشان می دهد.
S1.difference_update(S2) - تمام عناصر مشترک را از set1 حذف می کند.
S.discard(x) – یک عنصر(x) را از مجموعه حذف می کند. اگر x در مجموعه نباشد، خطا را نشان نخواهد داد.
S.remove(x) – یک عنصر(x) را از مجموعه حذف می کند. اگر x در مجموعه نباشد، یک خطا نشان می دهد.
S.pop() - عنصر اول/تصادفی مجموعه را حذف می کند.
S1.Union(S2) – Set1 | Set2 – تمام عناصر set1 و set 2 را نشان می دهد.
S1. Intersection(S2) – Set1 Set2 – عناصر مشترک set1 و set2 را نشان می دهد.
S1.Intersection_update(S2) - اکنون مجموعه S1 فقط شامل عناصر مشترک خواهد بود.
S1.isdisjoint(S2) - اگر S1 S2 مقادیر مشترکی نداشته باشد، True را برمیگرداند، در غیر این صورت False.
S1.issubset(S2) - اگر همه عناصر S1 در مجموعه S2 باشند، True را برمیگرداند.
S2.issuperset(S1) - اگر همه عناصر S1 در مجموعه S2 باشند، True را برمیگرداند، در غیر این صورت False.
len(S) - شماره را نشان می دهد. عناصر منحصر به فرد در مجموعه.
S1.symmetric_difference(S2) – S1^S2 – برای نمایش عناصر غیرمتداول از S1 و S2.
S1.symmetric_difference_update(S2) - اکنون مجموعه S1 فقط شامل عناصر غیر معمول خواهد بود.
S1.update([4،5،6]) - برای افزودن چندین مورد، به شکل list/tuple/set.
13. تابع فرهنگ لغت
D.clear( ) - برای حذف فرهنگ لغت.
E = D.copy( ) - برای کپی کردن یک فرهنگ لغت.
D.get('K1') - برای دریافت مقدار در برابر یک کلید در فرهنگ لغت. اگر کلید در فرهنگ لغت نباشد، بدون نشان دادن هیچ خطایی، None را نشان می دهد.
D.items( ) - برای نشان دادن تمام موارد یک فرهنگ لغت.
D.keys( ) - برای نمایش تمام کلیدهای یک فرهنگ لغت.
D.values( ) - برای نشان دادن تمام مقادیر یک فرهنگ لغت.
D.pop('K1') - برای حذف کلید به همراه فهرست آن.
D.popitem( ) - برای حذف آخرین کلید با مقدار.
D.setdefault('K3'), D.setdefault('K4', value), D['K4'] = value - برای افزودن کلید در انتهای فرهنگ لغت.
D.update('E') - برای افزودن یک فرهنگ لغت جدید در فرهنگ لغت موجود.
D.fromkeys(A) - برای ایجاد یک فرهنگ لغت، با استفاده از موارد فهرست به عنوان کلید. و افزودن یک مقدار به همه کلیدها اختیاری است.
"کلید" در D - برای بررسی وجود هر عنصر(کلید) در فرهنگ لغت.
14. DATATYPE Casting
تبدیل یک نوع داده به نوع دیگر.
int (1) = 1 - تبدیل int به int
int (3.2) = 3 - تبدیل شناور به int
int ('5') = 5 - تبدیل یک رشته عددی به int
int ('a') = خطا - نمی توان یک رشته الفبایی را به int تبدیل کرد
float (3.2) = 3.2 - تبدیل شناور به شناور
float (6) = 6.0 - تبدیل int به float
float ("10") = 10.0 - تبدیل رشته عددی به float
float ('b') = خطا - نمی توان یک رشته الفبایی را به float تبدیل کرد
Str ('a') = 'a' - تبدیل یک رشته به رشته
str (1) = '1' - تبدیل int به رشته
str (3.2) = "3.2" - تبدیل یک شناور به رشته
15. RANGE - یک لیست متوالی از اعداد ایجاد می کند.
محدوده (مقدار شروع، مقدار توقف، مقدار مرحله)، محدوده (0،50،1)، محدوده (1، 50)، محدوده (50)
16. FUNCTION - یک تابع یک بلوک از کد است که برای انجام برخی کارها تعریف شده است. ما یک تابع را فراخوانی می کنیم تا هر زمان که لازم باشد آن را اجرا کنیم.
پارامتر: در زمان تعریف تابع داده شده است. مثال: def func(a,b)
Arguments: در زمان فراخوانی تابع داده می شود. مثال: func(2،3)
def fun_name ( args/parameters ): عبارت چند خطی ,
def fun_name ( var1، var2 ): عبارت چند خطی
def new ( 2 , 3 ) : c = a + b , return c
اگر تعداد آرگومان هایی که باید ارسال شوند ثابت نیست... از آرگومان های دلخواه (با *args) استفاده می کنیم
Ex : def func(*values) : برای i در مقادیر print(i) # میتواند هر تعداد آرگومان را بگیرد.
آرگومانهای کلمه کلیدی: همچنین میتوانیم آرگها را با نحو key=value ارسال کنیم.
Ex : def new(b,a,c): print("برنده " , a)
جدید(a= «رام»، b= «شام»، c= «شیوا») ….. O/p خواهد بود: برنده رام است
17. تابع LAMBDA à این تابع یک خط است.
fun_name = پارامترهای لامبدا: عبارت تک خطی
Ex : sum = lambda a , b : a + b
18. INPUT FUNCTION - یک ورودی می گیرد و می تواند آن را در یک متغیر ذخیره کند.
مثلا 1 : a = ورودی ("نام خود را وارد کنید") ،
مثلا 2 : چاپ ("نام خود را وارد کنید")
x = ورودی ( )
19. INDEXING – list.index( item ) , list [ value index] , list [ start : stop : step ]
A.index(25) , A[1] , A [ 1 : 20 : 2 ] , A [ : 4 ] , A[ 2 : ] , A [ : ]
نمایه سازی منفی – A[-1]، A [ 8 : 0 : -1 ]، A [ : : -1 ]
نمایه سازی رشته - A.index( 'r' ) , A[ : 16 ]
فهرست تودرتو - فهرست در فهرست
مثلا: A = [ [1،2،3]، 4، 5، 6، [7،8،9] ]
20. FOR LOOP – برای val به ترتیب: بدنه حلقه for،
مثلا 1 : برای x در [1،2،3،4،5] : چاپ (x) ,
مثلا 2 : برای i در "موز" : چاپ (i)
BREAK STATEMENT (برای حلقه) - برای توقف حلقه در یک شرایط معین
1) برای val به ترتیب : بدنه حلقه for اگر val == 'seq_value' , break
مثلا: برای x در [1,2,3,4,5,6,7] :
چاپ (x)
اگر x == 5
شکستن
2) برای val به ترتیب : اگر val == 'seq_value' break , print(val)
مثلا: برای x در [1,2,3,4,5,6,7] :
اگر x == 5
شکستن
چاپ (x)
CONTINUE STATEMENT (برای حلقه) - برای رد شدن از یک تکرار
1) برای x در [1،2،3،4،5] :
اگر x == 4
ادامه
چاپ (x)
2) برای x در [1،2،3،4،5] :
چاپ (x)
اگر x == 4
ادامه
BREAK CONTINUE STATEMENT (برای حلقه) -
مثلا: برای x در [1,2,3,4,5,6,7]:
اگر x == 5 :
ادامه
اگر x == 6:
شکستن
چاپ (x)
تابع محدوده -
برای x در محدوده (6):
چاپ (x)
ELSE IN FOR LOOP -
1) برای x در محدوده (6):
چاپ (x)
دیگر:
چاپ ("حلقه تمام شد")
2) برای x در محدوده (0،6):
چاپ (x)
اگر x == 4 :
شکستن
دیگر:
چاپ ("حلقه تمام شد")
PASS STATEMENT - برای انتقال به دستورات بعدی
1) برای x در [1،2،3،4،5،6،7]:
مجوز
2) برای x در [1،2،3،4،5،6،7]:
اگر x == 3:
گذر
چاپ (x)
21. WHILE LOOP - حلقه while یک بلوک کد را تا زمانی که یک شرط خاص درست باشد تکرار می کند.
1) i = 0
در حالی که من <6 :
چاپ (i)
i = i +1
2) i = 0
در حالی که من <6 :
i = i +1
چاپ (i)
BREAK STATEMENT (While Loop) –
1) i = 0
در حالی که من <6 :
چاپ (i)
اگر من == 4 :
شکستن
i = i +1
2) i = 0
در حالی که من <6 :
اگر من == 4 :
شکستن
چاپ (i)
i = i + 1
CONTINUE STATEMENT (While Loop) -
1) i = 0
در حالی که من <6 :
i = i +1
اگر من == 3 :
ادامه
چاپ (i)
2) i = 0
در حالی که من <6 :
اگر من == 3 :
ادامه
چاپ (i)
i = i +1
3)i = 0
در حالی که من <6 :
اگر من == 3:
ادامه
i = i + 1
چاپ (i)
ELSE IN WHILE LOOP -
1) i = 0
در حالی که من <6 :
چاپ (i)
i = i+1
دیگر:
چاپ ("شرایط به پایان می رسد")
BREAK CONTINUE STATEMENT (While Loop) –
i = 0
در حالی که من <10 :
i = i + 1
اگر i = = 3:
ادامه
اگر i = = 9 :
شکستن
چاپ (i)
22. SPLIT FUNCTION
یک رشته را به یک لیست تقسیم می کند.
نحو : string.split ( جداکننده , maxsplit )
23. MAP FUNCTION
همه موارد یک لیست را می گیرد و یک تابع را در آن اعمال می کند.
نحو: نقشه (تابع، تکرارپذیرها) یا نقشه (شرایط، مقادیر)
مثلا: فهرست ( نقشه ( لامبدا x : x+1 , [1,2,3,4,5] ) )
24. عملکرد فیلتر
همه موارد یک لیست را می گیرد و یک تابع را به آن اعمال می کند، یک لیست فیلتر شده جدید را برمی گرداند.
نحو : فیلتر( تابع، توالی )
مثلا: لیست ( فیلتر ( لامبدا x : x%2 != 0 , [1,2,3,4,5,6] ) )
25. ENUMERATE FUNCTION
برای نمایش خروجی با شاخص استفاده می شود. میتوانیم فهرست، تاپل، مجموعه، فرهنگ لغت را برشماریم.
نحو : enumerate( list )
مثلا: فهرست (شمارش ("سیب"، "انبه"، "نارنجی") )
26. ZIP FUNCTION
برای زیپ کردن (فهرست) تکرارکننده های مختلف در یک مورد استفاده می شود.
نحو: z = zip(list1, list2, list3)
z = list(z) , print(z)
مثال: A = [1،2،3]، B = [«رام»، «شام»، «شیوا»]، C = [«دهلی»، «نویدا»، «آگرا»]
z = zip(A, B, C) , z = list(z) , print(z)
27. UNZIP FUNCTION
نحو: list1، list2، list3 = zip(*z)
مثلا: A، B، C = zip(*z)
تحلیلگر ارشد داده
نمایش نظرات