درس 3
بنام خدا
آموزش پایتون – درس 3
شروع برنامه نویسی
رشته :
رشته اولین نوع داده ای است که باهاش آشنا می شید . فرق رشته در پایتون با اکثر زبان های برنامه نویسی اینکه یک کاراکتر به عنوان یک رشته با طول یک می باشد . توضیح دیگر علامت نقل قول دوگانه و منفرد تقریبا کار یکسانی انجام می دن البته فرقهایی دارند که به مرور و با مثال آشنا خواهید شد از ۳ علامت نقل گول هم برای وارد کردن رشته هایی دارای علامت های خاص استفاده می شود .
کد HTML:
1234567>>> ‘Ali said “How\’re we supposed to know that?”’‘Ali said “How\’re we supposed to know that?”’ >>> “””This is kind of a special string, because it violates some... rules that we haven’t talked about yet”””“This is kind of a special string, because it violates some\n rules that wehaven’t talked about yet”
فرمت بندی رشته :
شبیه منطقی مانند فرمتد بندی C می باشد :
کد HTML:
123456789>>> “Mehdi %s” % (“ Bayazee”)‘Mehdi Bayazee’ >>> “%-10s %s %10s” % (“Name”, “Id”, “Family”)‘Name Id Family’ >>> “Controlling the number of decimal places shown: %.02f” % 25.101010101‘Controlling the number of decimal places shown: 25.10’
اعداد و عملگر ها :
پایتون دارای نوع های پیش فرض integers,long numbers,floating-point(float), imaginary numbers می باشد . برای اطلاع از نوع یک متغییر در هر لحظحه می توانید از دستور type استفاده کنید:
کد HTML:
12345678910>>> x=2000>>> type(x)<type ‘int’> >>> type(999999999999)<type ‘long’> >>> type(1.0)<type ‘float’>
در مورد تقدم عملگر و عملگر و بسیاری از بحث های تکراری توضیحی داده نمی شود و به مرور با آنها آشنا خواهید شد .
استفاده از سایر انواع پیشرفته پایتون :
خوب تقریبا از این بخش وارد مباحث ویژه پایتون می شویم . پایتون دارای 3 نوع درونی و پیشرفته تقریبا قابل مقایسه به آرایه و ساختمان C
می باشد . که عبارت است از :
1.Tuples
2.Lists
3.Dictionaries
Tuple یا توالی غیر قابل تغییری از داده همانند آرایه می باشد با این تفاوت که پس از تعریف و مقدار دهی اولیه قابل هیچ گونه تغییری نمی باشد . علامت مشخصه آن در هنگام تعریف پارانتز می باشد .
کد HTML:
1234567>>> filler = (“string”, “filled”, “by a”, “tuple”)>>> print “A %s %s %s %s” % fillerA string filled by a tuple >>> print “The second element of the tuple is ‘%s’” % filter[1]The second element of the tuple is ‘filled’
همانطور که متوجه شدید اندیس همانند C از صفر شروع می شود . برای پیدا کردن طول (تعداد اعضا) یک تیوپل از دستور len استفاده می شود هرگونه تلاش برای تغییر یا دسترسی به اندیس بیشتر از طول تیوپل باعث نمایش خطا می شود :
کد:
1
2
3
4
5
>>> print “%d” % len(filter)
3
>>> print a[len(filter) - 1]
tuple
List یا توالی قابل تغییری از داده همانند تیوپل می باشد با این تفاوت که قابلت تغییر و گسترش را دارا می باشد علامت مشخصه آن براکت می باشد .
کد HTML:
12345>>> breakfast = [ “coffee”, “tea”, “toast”, “egg” ]>>> count = 1>>> print “Todays breakfast is %s” % breakfast[count]Todays breakfast is tea
و همانطور که گفتیم لیست امکان تغییر را دارا می باشد .
کد HTML:
12345>>> breakfast[2]="milk">>> breakfast['coffee', 'tea', 'milk', 'egg']
توجه کنید که شما می توانید تنها عناصر موجود را تغییر دهید برای اضافه کردن عناصر و داده های جدید از دستور append استفتده می کنیم .
کد HTML:
1234>>> breakfast.append(“waffle”)>>> breakfast['coffee', 'tea', 'milk', 'egg', 'waffle']
اگر قصد دارید تعداد بیشتری از داده ها را در قالب لیست یا تیوپل به لیست موجود اضافه کنید بدین منظور از دستور extend استفاده می کنیم
کد HTML:
1234>>> breakfast.extend([“juice”, “decaf”, “oatmeal”])>>> breakfast[‘coffee’, ‘tea’, ‘milk’, ‘egg’, ‘waffle’, ‘juice’, ‘decaf’, ‘oatmeal’]
Dictionary شبیه به لیست و تیوپل می باشد با این تفاوت که ایندکس دیکشنری عددی نمی باشد و می تواند شامل رشته یا در اصطلاح هر اسم دیگری باشد !!
کد HTML:
123456>>> dic={}>>> dic["name"]="mehdi">>> dic["family"]="bayazee">>> print dic{'name': 'mehdi', 'family': 'bayazee'}
نام ایندکس در دیکشنری keys یا کلید و مقدار هر کلید value نامیده می شود . که برای بدست آورد کلیدها و مقادیر می توانید از توابع ()keys و ()values استفاده می شود :
کد HTML:
12345>>> dic.keys()['name', 'family']>>> dic.values()['mehdi', 'bayazee']
نکات :
می توانید در پایتون از اندیس دهی معکوس استفاده کنید ! به این صورت که اندیس 1- آخرین عضو آرایه می باشد .
تکه تکه کردن (Slicing) آرایه و رشته از طریق ترکیب اندیس آغازین و پایانی صورت می گیرد .
کد HTML:
1234567891011>>>last_names = [ “Douglass”, “Jefferson”, “Williams”, “Frank”, “Thomas” ]>>>last_names[-1]'Thomas'>>>last_names[-5]'Douglass'>>> s[1:4]['Jefferson', 'Williams', 'Frank']>>> s[0][0:6]'Dougla'
برای مشاهده اعضا هر کلاس (متغییر ها و توابع) می توانید از دستور dir استفاده کنید .
کد HTML:
1234>>> s=[]>>> dir(s)['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__str__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
برای دسترسی با مستندات هر دستور یا کلاس می توانید متغییر __doc__ آن دستور استفاده کنید.
کد:
1
2
3
4
>>> print (s.__doc__)
list() -> new list
list(sequence) -> new list initialized from sequence's items
راستی پیشنهاد می کنم حتما نسخه pdf مربوط به هر درس رو دانلود کنید :
علاقه مندی ها (بوک مارک ها)