ورودی، خروجی و وارد کردن در برنامه نویسی پایتون
ورودی، خروجی و وارد کردن در برنامه نویسی پایتون
در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، ورودی، خروجی و وارد کردن در برنامه نویسی پایتون (Input, Output and Import) را خواهید آموخت. این آموزش بر روی دو توابع توکار ()print و ()input برای انجام عملیات ورودی و خروجیدر پایتون تمرکز دارد. همچنین، شما یاد خواهید گرفت که ماژول ها را وارد کنید و از آنها در برنامه خود استفاده کنید.
پیشنهاد ویژه : پکیج آموزش پایتون مختص بازار کار
پایتون توابع توکار زیادی را ارائه می دهد که به راحتی در اعلان پایتون در دسترس ما قرار می گیرد.
برخی از توابع مانند ()print و ()input به ترتیب برای عملیات ورودی و خروجی استاندارد بطور گسترده ای استفاده می شوند. اجازه دهید ابتدا قسمت خروجی را مشاهده کنیم.
خروجی پایتون با استفاده از تابع ()print
ما از تابع () print برای خروجی داده ها به دستگاه خروجی استاندارد (صفحه نمایش) استفاده می کنیم. همچنین می توانیم خروجی داده ها را در یک فایل استفاده کنیم، اما بعداً در مورد این موضوع بحث خواهیم کرد.
نمونه ای از کاربرد آن در زیر آورده شده است.
1 |
print('This sentence is output to the screen') |
خروجی
1 |
This sentence is output to the screen |
مثال دیگری در زیر آورده شده است:
1 2 |
a = 5 print('The value of a is', a) |
خروجی
1 |
The value of a is 5 |
در دستور () print دوم، می توان فهمید که فاصله ای بین رشته و مقدار متغیر a اضافه شده است. این به طور پیش فرض است، اما ما می توانیم آن را تغییر دهیم.
نحو دقیق تابع ()print به شرح زیر است:
1 |
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False) |
در کد بالا، objects مقدار (هایی) است که باید چاپ شوند.
از جدا کننده sep بین مقادیر استفاده می شود. و این جداکننده به طور پیش فرض به یک کاراکتر فاصله تبدیل می شود.
بعد از چاپ همه مقادیر، end چاپ می شود. به طور پیش فرض به یک خط جدید تبدیل می شود.
file شیئی است که مقادیر در آن چاپ شده و مقدار پیش فرض آن sys.stdout (صفحه نمایش) است. در اینجا مثالی برای نشان دادن این موضوع آورده شده است.
1 2 3 |
print(1, 2, 3, 4) print(1, 2, 3, 4, sep='*') print(1, 2, 3, 4, sep='#', end='&') |
خروجی
1 2 3 |
1 2 3 4 1*2*3*4 1#2#3#4& |
قالب بندی خروجی در پایتون
بعضی اوقات ما می خواهیم خروجی خود را قالب بندی کنیم تا جذاب به نظر برسد. این کار را می توان با استفاده از روش () str.format انجام داد. این روش برای هر شی رشته ای قابل مشاهده است.
1 2 3 |
>>> x = 5; y = 10 >>> print('The value of x is {} and y is {}'.format(x,y)) The value of x is 5 and y is 10 |
در اینجا، از کروشه {} به عنوان placeholders استفاده می شود. می توان با استفاده از اعداد (اندیس تاپل) ترتیب چاپ آنها را تعیین کرد.
1 2 |
print('I love {0} and {1}'.format('bread','butter')) print('I love {1} and {0}'.format('bread','butter')) |
خروجی
1 2 |
I love bread and butter I love butter and bread |
حتی می توانیم از آرگومان های کلید واژه برای قالب بندی رشته استفاده کنیم.
1 2 |
>>> print('Hello {name}, {greeting}'.format(greeting = 'Goodmorning', name = 'John')) Hello John, Goodmorning |
همچنین می توانیم رشته هایی مانند سبک sprintf () قدیمی را که در زبان برنامه نویسی C استفاده می شود، قالب بندی کنیم. ما برای رسیدن به این هدف از عملگر٪ استفاده می کنیم.
1 2 3 4 5 |
>>> x = 12.3456789 >>> print('The value of x is %3.2f' %x) The value of x is 12.35 >>> print('The value of x is %3.4f' %x) The value of x is 12.3457 |
ورودی پایتون
تا اینجای کاز برنامه های ما ایستا بودند. مقدار متغیرها در سورس کد تعریف شده یا به صورت کد سخت نوشته شده است.
برای ایجاد انعطاف پذیری، ممکن است ورودی از کاربر بگیریم. در پایتون، ما تابع ()input را داریم که این اجازه را می دهد. نحو ()input به شرح زیر است:
1 |
input([prompt]) |
که در آن prompt رشته ای است که می خواهیم روی صفحه نمایش نشان دهیم. به صورت اختیاری است.
1 2 3 4 |
>>> num = input('Enter a number: ') Enter a number: 10 >>> num '10' |
در اینجا، می توانیم ببینیم که مقدار وارد شده 10 یک رشته است، نه یک عدد. برای تبدیل این به یک عدد می توان از توابع ()int یا ()float استفاده کرد.
1 2 3 4 |
>>> int('10') 10 >>> float('10') 10.0 |
همین عملیات را می توان با استفاده از تابع eval () انجام داد. اما eval آن را زمان بیشتری را می برد. این می تواند حتی عبارات را ارزیابی کند، به شرطی که ورودی یک رشته باشد.
1 2 3 4 5 6 7 |
>>> int('2+3') Traceback (most recent call last): File "<string>", line 301, in runcode File "<interactive input>", line 1, in <module> ValueError: invalid literal for int() with base 10: '2+3' >>> eval('2+3') 5 |
وازد کردن (import) در پایتون
هنگامی که برنامه ما بزرگتر می شود، بهتر است آن را به ماژول های مختلف تقسیم کنیم.
ماژول فایلی است که شامل تعاریف و دستورات پایتون است. ماژول های پایتون یک نام فایل دارند و با پسوند .py به پایان می رسند.
تعاریف داخل ماژول را می توان به ماژول دیگری یا مفسر تعاملی در پایتون وارد کرد. ما برای این کار از کلید واژه import استفاده می کنیم.
به عنوان مثال، ما می توانیم با تایپ کردن خط زیر ماژول math را با نوشتن import math وارد کرد:
1 |
import math |
ما می توانیم از ماژول به روش های زیر استفاده کنیم:
1 2 |
import math print(math.pi) |
خروجی
1 |
3.141592653589793 |
اکنون تمام تعاریف داخل ماژول math در دامنه (محدوده) ما موجود است. همچنین می توانیم برخی ویژگی ها و توابع خاص را فقط با استفاده از کلید واژه from وارد کنیم. مثلا:
1 2 3 |
>>> from math import pi >>> pi 3.141592653589793 |
پایتون هنگام وارد کردن ماژول، چندین مکان تعریف شده که در sys.path تعریف شده است را بررسی می کند. این لیستی از مکان های تعریف شده است.
1 2 3 4 5 6 7 8 9 |
>>> import sys >>> sys.path ['', 'C:\\Python33\\Lib\\idlelib', 'C:\\Windows\\system32\\python33.zip', 'C:\\Python33\\DLLs', 'C:\\Python33\\lib', 'C:\\Python33', 'C:\\Python33\\lib\\site-packages'] |
همچنین می توانیم مکان خود را به این لیست اضافه کنیم.
دیدگاه شما