متغییرها و داده ها در پایتون

متغییرها و داده ها در پایتون -- Python Variables and Data Types

متغییرها چیزی جز فضای رزرو شده ای در حافظه برای ذخیره مقادیر مورد نظر نیستند. این بدان معنی است که وقتی یک متغییر ایجاد می کنید، در حقیقت فضایی را در حافظه رزرو می کنید.
بر اساس نوع داده اختصاص داده شده به متغییر، مترجم زبان پایتون حافظه مورد نیاز را اختصاص داده و تصمیم می گیرد که چه داده ای را می توان در حافظه رزرو شده ذخیره کرد. بنابراین، با اختصاص دادن انواع داده های مختلف به متغییرها، می توانید Integers, decimals و یا characters را در این متغییرها ذخیره کنید.

انواع داده ها در پایتون

مقداردهی به متغییرها — Assigning Values to Variables

در پایتون نیاز به تعریف دقیق متغییرها ندارید. ایجاد یک متغییر به سادگی و با مقداردهی به آن ایجاد می شود. عملگری که در سمت چپ = قرار دارد نام متغییر و عملگری که در سمت راست آن قرار دارد مقدار آن است. لطفا به مثال زیر توجه کنید:

#!/usr/bin/python3

counter = 100           # An integer assignment
miles = 1000.0          # A floating point
name = “John”         # A string

print (counter)
print (miles)
print (name)

در مثال فوق ۱۰۰، ۱۰۰۰٫۰ و Jone مقادیر و counter, milrs و  name اسامی متغییرها هستند.

تخصیص چندگانه — Multiple Assignment

پایتون این اجازه را به شما می دهد که همزمان به چندین متغییر مقداری یکسان دهید:

>>> a = b = c = 1

در این مثال هر سه متغییر دارای مقداری از نوع integer هستند که همگی به یک قسمت واحد از حافظه اشاره می کنند. همچنین می توانید مقادیر مختلفی را به متغییرهای مختلف مرتبط نمائید:

>>> a, b, c = 1, 2, “john”

در عبارت فوق همانطور که مشخص است دو مقدار عددی یا integer به متغییرهای a و b مقداردهی شده و مقدار رشته ای john به متغییر c.

انواع داده های استاندارد — Standard Data Types

داده ها در حافظه انواع مختلفی دارند. به طور مثال سن یک فرد در حافظه به صورت عدد ذخیره شده و آدرس به صورت حروف الفبا و در قالب کاراکتر. زبان پایتون دارای انواع داده های مختلف استاندارد است که عملیات ممکن روی آنها تعریف شده و روش ذخیره سازی متناسب با هر یک از آنها استفاده می شود.

–  Numbers
–  String
–  List
–  Tuple
–  Dictionary

اعداد در پایتون — Python Numbers

نوع داده Numeric مقادیر عددی را ذخیره می کنند. اشیاء عددی یا Numeric هنگامی ایجاد می شوند که مقداری را به آنها اختصاص دهید.

var1 = 1
var2 = 10

شما می توانید با استفاده از دستور del رفرنس به یک شیء عددی را حذف کنید.

del var1[,var2[,var3[….,varN]]]]

با استفاده از این دستور می توانید یک متغییر تکی و یا تعدادی از متغییرها را همزمان حذف کنید:

del var
del var_a, var_b

پایتون از سه نوع متقاوت از داده های عددی یا numeric پشتیبانی می کند:

–  int (signed integers)
–  float (floating point real –  values)
–  complex (complex numbers)

نوع داده integer در پایتون نسخه ۳ معرف long integer است. در نتیجه نوع داده مستقلی با نام long وجود ندارد:

intfloatcomplex
100.03.14j
10015.2045.j
-786-21.99.322e-36j
08032.3+e18.876j
-0490-90.-.6545+0J
-0x260-32.54e1003e+26J
0x6970.2-E124.53e-7j

رشته ها در پایتون — Python Strings

رشته ها در پایتون معرف تعدادی کاراکتر به هم پیوسته است که در بین کتیشن مارک قرار گیرند. برای پایتون single و یا double کتیشن فرقی نمی کند. برای دسترسی به آرایه ای از رشته ها می توانید با استفاده از اپراتور کروشه ([] و [:]) استفاده کنید. شاخص از ۰ شروع می شود و -۱ نشان دهنده انتهای رشته است.

با استفاده از عملگر (+) برای به هم متصل کردن رشته ها استفاده کنیم. همچنین برای تکرار یک رشته می توانیم از عملگر (*) استفاده کنیم. به مثال های زیر توجه کنید:

#!/usr/bin/python3

str = ‘Hello World!’

print (str)                       # Prints complete string
print (str[0])                  # Prints first character of the string
print (str[2:5])               # Prints characters starting from 3rd to 5th
print (str[2:])                 # Prints string starting from 3rd character
print (str * 2)                 # Prints string two times
print (str + “TEST”)       # Prints concatenated string

نتیجه اجرای دستورات فوق را می توانید در زیر ببینید:

Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST

لیست ها در پایتون — Python Lists

لیست ها از انواع داده های ترکیبی پایتون هستند. لیست شامل مقادیری است که توسط کاما جدا شده و درون [] قرار دارند. لیست ها تا حدودی شبیه به آرایه ها در زبان C هستند. یکی از تفاوت های بین آنها این است که تمام اقلام متعلق به یک لیست لازم نیست که از یک نوع بوده و  می تواند از نوع داده های مختلف باشند.

برای دسترسی به آیتم های ذخیره شده و یا دخیره مقادیر در لیست از  عملگرهای [] و [:] استفاده می شود. استفاده از عملگرهای + و *  نیز مطابق مثال زیر مقدور است:

#!/usr/bin/python3

list = [ ‘abcd’, 786 , 2.23, ‘john’, 70.2 ]
tinylist = [123, ‘john’]

print (list)                       # Prints complete list
print (list[0])                  # Prints first element of the list
print (list[1:3])               # Prints elements starting from 2nd till 3rd
print (list[2:])                 # Prints elements starting from 3rd element
print (tinylist * 2)           # Prints list two times
print (list + tinylist)       # Prints concatenated lists

نتیجه اجرای دستورات فوق به صورت زیر خواهد بود:

[‘abcd’, 786, 2.23, ‘john’, 70.200000000000003]
abcd
[786, 2.23]
[2.23, ‘john’, 70.200000000000003]
[123, ‘john’, 123, ‘john’]
[‘abcd’, 786, 2.23, ‘john’, 70.200000000000003, 123, ‘john’]

چندتایی ها در پایتون — Python Tuples

چندتایی یا tuple در نوع دیگری از داده های ترکیبی پایتون همانند list است. tuple شامل تعدادی از مقادیر جدا شده با کاما است. با این حال، بر خلاف لیست ها، مقادیر داخل پرانتز قرار می گیرند.

تفاوت اصلی بین list و tuple عبارتند از: لیست ها در براکت ها [] محصور می شوند و عناصر و اندازه آنها می تواند تغییر کند، در حالی که tuple در پرانتز () تعبیه شده اند و نمی توان آنها را به روز کرد. tuple ها را می توان به عنوان لیست های فقط خواندنی فرض کرد. به مثال زیر توجه کنید:

#!/usr/bin/python3

tuple = ( ‘abcd’, 786 , 2.23, ‘john’, 70.2 )
tinytuple = (123, ‘john’)

print (tuple)                            # Prints complete tuple
print (tuple[0])                       # Prints first element of the tuple
print (tuple[1:3])                    # Prints elements starting from 2nd till 3rd
print (tuple[2:])                      # Prints elements starting from 3rd element
print (tinytuple * 2)                # Prints tuple two times
print (tuple + tinytuple)        # Prints concatenated tuple

نتیجه به صورت زیر خواهد بود:

(‘abcd’, 786, 2.23, ‘john’, 70.200000000000003)
abcd
(786, 2.23)
(2.23, ‘john’, 70.200000000000003)
(123, ‘john’, 123, ‘john’)
(‘abcd’, 786, 2.23, ‘john’, 70.200000000000003, 123, ‘john’)

نمونه کدهای زیر با استفاده از tuple مجاز نیستند و جهت رسیدن به نیازمندی ها می بایست از list استفاده نمود:

#!/usr/bin/python3

tuple = ( ‘abcd’, 786 , 2.23, ‘john’, 70.2 )
list = [ ‘abcd’, 786 , 2.23, ‘john’, 70.2 ]
tuple[2] = 1000             # Invalid syntax with tuple
list[2] = 1000                 # Valid syntax with list

دیکشنری ها در پایتون — Python Dictionary

دیکشنری ها در پایتون به نوعی مدلی از جداول Hash یا همان hash-table است. عملکرد آنها همانند آرایه های انجمنی (associative array) در زبان Perl هستند و شامل جفت های کلیدی و یا key-value pairs هستند. کلید واژه های دیکشنری در پایتون می توانند تقریبا از هر نوعی باشند، اما معمولا شامل اعداد یا رشته ها هستند. از سوی دیگر، مقادیر می توانند هر شیء دلخواه قابل استفاده در پایتون باشند.

برای تعریف دیکشنری در پایتون از {} استفاده می کنیم. همچنین برای  دستیابی به مقادیر و یا مقدار دهی به دیکشنری می بایست از []  استفاده کنیم. به مثال زیر توجه کنید:

#!/usr/bin/python3

dict = {}
dict[‘one’] = “This is one”
dict[2] = “This is two”

tinydict = {‘name’: ‘john’,’code’:6734, ‘dept’: ‘sales’}

print (dict[‘one’]) # Prints value for ‘one’ key
print (dict[2]) # Prints value for 2 key
print (tinydict) # Prints complete dictionary
print (tinydict.keys()) # Prints all the keys
print (tinydict.values()) # Prints all the values

نتیجه به صورت زیر خواهد بود:

This is one
This is two
{‘name’: ‘john’, ‘dept’: ‘sales’, ‘code’: 6734}
dict_keys([‘name’, ‘dept’, ‘code’])
dict_values([‘john’, ‘sales’, 6734])

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

تبدیل انواع داده ها به یکدیگر — Data Type Conversion

شاید زمان هایی را در برنامه نویسی تجربه کرده باشید که نیاز دارید تایپ های داده های پیش فرض موجود را به هم تبدیل کنید. برای انجام این کار به سادگی می توانید از اسم نوع داده به عنوان یک تابع و یا function استفاده کنید.

توابع پیش فرض بسیاری برای تبدیل انواع داده ها در پایتون پیشبینی شده است. به فهرست این توابع و کاربر آنها در جدول زیر توجه کنید:

ردبفعنوان تابع
۱

int(x [,base])

2

float(x)

3

complex(real [,imag])

4

str(x)

5

repr(x)

6

eval(str)

7

tuple(s)

8

list(s)

9

set(s)

10

dict(d)

11

frozenset(s)

12

chr(x)

13

unichr(x)

14

ord(x)

15

hex(x)

16

oct(x)

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *