مقدمه
هر برنامه کامپیوتری برای انجام محاسبات و پردازش اطلاعات، با دادهها سروکار دارد. عدد، متن، حروف و مقادیر مختلف، نمونههایی از دادههایی هستند که در برنامههای پایتون استفاده میشوند.
شناخت انواع داده در پایتون یکی از اولین مفاهیمی است که هر برنامهنویس باید یاد بگیرد. زیرا نوع یک مقدار مشخص میکند پایتون چگونه با آن رفتار کند و چه عملیاتی روی آن قابل انجام باشد.
در این آموزش از مجموعه آموزش برنامهنویسی پایتون، با مفهوم مقدار، داده و مهمترین انواع داده آشنا میشویم. همچنین یاد میگیریم چگونه نوع یک مقدار را با تابع type() بررسی کنیم.
مقدار و داده در پایتون چیست؟
یک مقدار (Value) یکی از عناصر بنیادی در برنامهنویسی است. برنامهها با استفاده از مقدارها اطلاعات را ذخیره، پردازش و نمایش میدهند.
برای مثال، عدد 2 یک مقدار عددی است. این مقدار میتواند نتیجه محاسبه 1 + 1 باشد.
از طرف دیگر، عبارت "Hello, world" یک مقدار متنی محسوب میشود.
بنابراین میتوان گفت:
2 یک مقدار عددی است.
"Hello, world"یک مقدار متنی است.
3.2 یک مقدار اعشاری است.
هر یک از این مقدارها به نوع داده (Data Type) خاصی تعلق دارند.
شناخت نوع داده اهمیت زیادی دارد. زیرا عملیات قابل انجام روی یک مقدار، به نوع آن بستگی دارد.
انواع داده در پایتون
پایتون از انواع مختلفی از داده پشتیبانی میکند. در شروع یادگیری برنامهنویسی، سه نوع داده بسیار مهم هستند:
int برای اعداد صحیح
float برای اعداد اعشاری
str برای رشتههای متنی
در ادامه هرکدام را بررسی میکنیم.
عدد صحیح در پایتون؛ نوع int
اعدادی مانند 1، 2، 10، 100 و -25 عدد صحیح هستند.
در پایتون، اعداد صحیح از نوع int هستند.
برای مثال:
print(4)
خروجی:
4
در این مثال مقدار 4 یک عدد صحیح است.
میتوانیم نوع این مقدار را نیز بررسی کنیم:
type(4)
خروجی:
بنابراین هرگاه پایتون با یک عدد صحیح مواجه شود، آن را در گروه int قرار میدهد.
کاربرد اعداد صحیح
اعداد صحیح در بسیاری از برنامهها کاربرد دارند. برای مثال:
age = 20
در اینجا مقدار سن، یک عدد صحیح است.
همچنین تعداد دانشآموزان، تعداد کالاها، شماره یک گزینه یا تعداد تکرار یک عملیات میتواند با int نمایش داده شود.
عدد اعشاری در پایتون؛ نوع float
اعدادی که دارای بخش اعشاری هستند، در پایتون معمولاً از نوع float محسوب میشوند.
برای مثال:
3.2
برای بررسی نوع این مقدار میتوان نوشت:
type(3.2)
خروجی:
بنابراین 3.2 یک مقدار از نوع float است.
اعداد اعشاری در محاسبات علمی، مهندسی و ریاضی کاربرد زیادی دارند.
برای مثال:
average = 17.5
در اینجا مقدار 17.5 یک عدد اعشاری است.
رشته در پایتون؛ نوع str
رشته یا String مجموعهای از کاراکترهاست که پشت سر هم قرار گرفتهاند.
رشتهها میتوانند شامل حروف، اعداد، فاصله و سایر کاراکترها باشند.
برای تعریف یک رشته، معمولاً آن را داخل کوتیشن قرار میدهیم.
برای مثال:
"Hello, world"
یا:
'Hello, world'
پایتون این دو مقدار را به عنوان رشته تشخیص میدهد.
برای بررسی نوع رشته میتوان از type() استفاده کرد:
type("Hello, world")
خروجی:
بنابراین نوع داده رشته در پایتون str نام دارد.
تفاوت عدد و رشته عددی در پایتون
یکی از نکات مهم برای برنامهنویسان تازهکار، تفاوت میان عدد و رشتهای که شبیه عدد است محسوب میشود.
برای مثال:
17
یک عدد صحیح است.
اما:
"17"
یک رشته است.
ظاهر این دو مقدار شبیه یکدیگر است، اما پایتون آنها را متفاوت تفسیر میکند.
میتوانیم این موضوع را با type() بررسی کنیم:
type(17)
خروجی:
اما:
type("17")
خروجی:
همین تفاوت درباره اعداد اعشاری نیز وجود دارد.
برای مثال:
3.2
از نوع float است.
اما:
"3.2"
از نوع str محسوب میشود.
این موضوع در هنگام دریافت اطلاعات از کاربر اهمیت زیادی دارد. ممکن است دادهای که کاربر وارد میکند به شکل متن دریافت شود، حتی اگر ظاهراً یک عدد باشد.
تابع type در پایتون چیست؟
یکی از توابع ساده و کاربردی پایتون، تابع type() است.
از این تابع میتوان برای تشخیص نوع یک مقدار یا متغیر استفاده کرد.
ساختار کلی آن به شکل زیر است:
type(value)
برای مثال:
type(10)
خروجی:
یا:
type(3.5)
خروجی:
و برای یک رشته:
type("Python")
خروجی:
تابع type() ابزار بسیار مفیدی برای بررسی و خطایابی برنامههای پایتون است.
چرا تشخیص نوع داده اهمیت دارد؟
فرض کنید دو مقدار زیر را داریم:
10
و:
"10"
هر دو ظاهراً یک عدد را نشان میدهند. اما پایتون آنها را یکسان در نظر نمیگیرد.
مقدار اول int است و مقدار دوم str.
در نتیجه، رفتار آنها در عملیات مختلف میتواند متفاوت باشد.
برای مثال، در کار با رشتهها ممکن است عملگر + برای اتصال متنها استفاده شود.
"Hello" + "Python"
نتیجه:
HelloPython
اما این مفهوم با جمع دو عدد متفاوت است:
10 + 20
نتیجه:
30
بنابراین شناخت نوع داده از ایجاد بسیاری از خطاهای برنامهنویسی جلوگیری میکند.
اعداد بزرگ و استفاده از کاما
یکی از نکات مهم مطرحشده در آموزش مقادیر و دادهها در پایتون، نحوه نوشتن اعداد بزرگ است.
ممکن است برای خوانایی بیشتر بخواهیم عددی مانند یک میلیون را اینگونه بنویسیم:
1,000,000
اما در پایتون این نوشتار میتواند نتیجهای متفاوت از انتظار برنامهنویس ایجاد کند.
برای مثال:
print(1,000,000)
پایتون این مقادیر را مانند چند آرگومان جداگانه برای print() در نظر میگیرد.
در نتیجه خروجی به شکل مورد انتظار یک میلیون ظاهر نمیشود.
برای نمایش عدد یک میلیون به عنوان یک عدد صحیح، باید آن را بدون جداکننده کاما بنویسیم:
1000000
بنابراین هنگام نوشتن اعداد در پایتون، نباید برای جدا کردن سه رقم یک عدد صحیح معمولی از کاما استفاده کنیم.
جدول مقایسه انواع داده پایه در پایتون
|
مقدار |
نوع داده |
مثال |
|
عدد صحیح |
int |
17 |
|
عدد اعشاری |
float |
3.2 |
|
رشته متنی |
str |
"Python" |
این سه نوع داده، از مهمترین مفاهیمی هستند که در ابتدای آموزش پایتون با آنها روبهرو میشوید.
چند مثال کاربردی از انواع داده
برای درک بهتر، چند مقدار مختلف را در کنار یکدیگر قرار میدهیم:
age = 20
average = 18.5
name = "Sara"
در این مثال:
میتوانیم نوع هرکدام را بررسی کنیم:
type(age)
type(average)
type(name)
این روش هنگام یادگیری پایتون بسیار کاربردی است. هر زمان درباره نوع یک متغیر مطمئن نبودید، میتوانید با type() آن را بررسی کنید.
تمرین پیشنهادی برای یادگیری بهتر
برای تثبیت مطالب، کد زیر را در محیط پایتون اجرا کنید:
a = 25
b = 3.2
c = "Python"
print(type(a))
print(type(b))
print(type(c))
سپس مقدارهای متغیرها را تغییر دهید.
برای مثال:
a = "25"
دوباره type(a) را اجرا کنید.
مشاهده خواهید کرد که نوع a از int به str تغییر کرده است.
این تمرین ساده به شما کمک میکند تفاوت میان مقدار و نوع داده را بهتر درک کنید.
جمعبندی؛ مقادیر و دادهها در پایتون
دادهها پایه اصلی هر برنامه پایتون هستند. هر مقدار دارای یک نوع مشخص است و این نوع، نحوه رفتار پایتون با آن مقدار را تعیین میکند.
در این آموزش با سه نوع مهم آشنا شدیم. int برای اعداد صحیح، float برای اعداد اعشاری و str برای رشتهها استفاده میشود.
همچنین یاد گرفتیم که ظاهر یک مقدار همیشه نوع واقعی آن را مشخص نمیکند. برای مثال، 17 یک عدد صحیح است، اما "17" یک رشته محسوب میشود.
تابع type() نیز ابزار سادهای برای تشخیص نوع داده است. تسلط بر همین مفاهیم پایه، مسیر یادگیری مباحث بعدی مانند لیستها، چندتاییها، دیکشنریها، عملگرها، شرطها و حلقهها را هموار میکند.
اگر میخواهید برنامهنویسی پایتون را اصولی یاد بگیرید، بهتر است این مفاهیم پایه را بهصورت عملی تمرین کنید و سپس سراغ ساختارهای داده و مباحث پیشرفتهتر بروید.