در آموزش پایتون بخش اول، در مورد نصب پایتون و همچنین رشته ها صحبت کردیم. در بخش دوم آموزش درمورد list ها، ست ها، تاپلها و دیکشنری ها، صحبت میکنیم.
lst = [1,2,3]
type(lst)
lst = [1, 2.5, 'a']
lst = ['ahmad', 'Ali', 'Reza']
len(lst)
indexing in list
lst[0]
lst = [1, 2.5, 'a', 'James']
lst[-1]
animals= ['cat', 'bat', 'rat', 'elephant']
print('the {} is afraid of the {}'.format(animals[-1], animals[-3]))
Slicing
animals[1:3]
animals[:3]
animals[1:]
animals[:]
animals[::-1]
animals
animals_inverse = animals[::-1]
animals_inverse
or
animals= ['cat', 'bat', 'rat', 'elephant']
animals
# recvesting a list
animals.reverse() # use with caution
animals
تغییر مقدار در یک ایندکس:
animals= ['cat', 'bat', 'rat', 'elephant']
animals[1]='horse'
List Concatenation and List Replication
s1 = [1,2,3]
s2=['a','b','c']
s1+s2
removing values
animals= ['cat', 'bat', 'rat', 'elephant']
del animals[1]
or
animals.remove('rat')
animals= ['cat', 'bat', 'rat', 'elephant']
del animals[0:2]
finding value in list
days = ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN']
'MON' in days
List methods
Adding Values to Lists with the append() and insert()
نکته :
تاپل قابل تغییر یا immutable نیست. ولی لیست تغییر پذیر یا mutable است.
# append()
animals= ['cat', 'bat', 'rat', 'elephant']
animals.append('tiger')
animals.insert(2, 'lion')
getting an element with pop()
نکته: بعد از عمل pop دیگر آن عنصر وجود ندارد. متود Pop زمانی به درد میخورد که بخواهیم عنصری را به صورت مستقل از یک لیست بیرون بکشیم، روی آن پردازش کنیم و آن را حذف کنیم.
animals.pop(1)
تفاوتdiscard , remove
در discard اگرعنصر وجود نداشته باشد، خطایی را تولید نخواهد کرد اما در استفاده از remove خطا تولید خواهد شد.
نکته:
iterable یعنی متغیری که تکرار پذیر باشد و بعبارتی برای مثال بتوان روی آن حلقه زد.
Sorting values
nums = [2, 5, 3.14, 1, -7]
nums.sort()
nums = [2, 5, 3.14, 1, -7]
nums.sort(reverse = True)
nums
سورت کردن بر اساس حروف الفبا:
animals= ['cat', 'bat', 'rat', 'elephant']
animals.sort()
animals
itereate through multiple lists
name = ['Ali', 'Ahmad', 'Sara']
grade = [20, 15, 17]
for n,g in zip(name, grade):
print('{} got {} in exam '.format(n,g))
result:
Ali got 20 in exam
Ahmad got 15 in exam
Sara got 17 in exam
list Comprehension
lst = [1,2,3,4,5]
new_lst = []
for i in lst:
new_lst.append(i**2)
or
[i**2 for i in lst]
map کردن:
# map
s = ['abc', 'def', 'ghi']
s2= [i.upper() for i in s]
فیلتر کردن:
# filter
nums = [1,2,3,4,5,6, 7, 8, 9, 10]
[x for x in nums if x%3==0]
آموزش ماتریس ها Multidimentianal lists (matrics)
mat = [[1,2,3],[3,4,5]] # 2x3
mat[0]
mat[0][1]
or
mat3 = [[1,2,3],['t', 'abc', '20'], ['My name', 'Tehran', 'a', [50, 'Python']]]
mat3[2][3][1]
Tuple Data Type
# tuple is immutable
t = (1,2,3)
t
نکته : اعضای تاپل را نمیتوان تغییر داد.
set
در ست نمیتوانیم داده تکراری داشته باشیم:
b = {'r', 't', 'y', 't', 'y'}
b
مجموعه ها:
1- اجتماع مجموعه ها:

2- اشتراک دو مجموعه:

3- تفاضل دو مجموعه:

Dictionaries
Capitals = {'Iran': 'Tehran', 'Germany': 'Berlin', 'France': 'Paris'}
افزودن و حذف کردن عنصر در دیکشنری:

کسب اطلاعات در مورد دیکشنری به دو روش :

دریافت لیست key و value در دیکشنری:

چاپ خلاقانه آیتم های دیکشنری:

تابع در پایتون:
def func_name(arguments):
operations
(return ...)
def say_hello(name):
print('Hello', name)
say_hello('Mohammad')
توجه به return وprint :
def power_2(num):
print(num**2)
return num**2
توابع چند جوابه:
def evaluate (grade):
if grade >=18:
return 'excellent'
elif (grade >= 16 and grade<18):
return 'good'
else:
return 'poor'
افزودن توضیحات تابع:
با گرفتن شیفت و تب این توضیحات نمایش داده میشود:
#Comment Here
def say_hello(param1='My friend!'):
"""
This Function says Hello to any name that is present in input
"""
print('Hello {}'.format(param1))
در تابع بالا پارامتر پیشفرض همان my friend است.
مثال دیگر از تابع:
def add(x = 0, y = 0):
return x+y
add(1,2)
سایر آموزش ها:
منابع:
1-git hub