در بخش سوم مقالهی آموزش پایتون در خصوص کلماتی که برای مفسر پایتون معنی خاصی دارد بحث شد. برنامه نویسان مجاز به استفاده از آنها در نام متغیرها و تابع نیستند. نکتهی مهم آن است که چگونه میتوان این کلمات را در پایتون شناسایی کرد. در این مقاله نشان داده میشود که علاوه بر نوشتن یک برنامه توسط خودتان، میتوانید از یک کتابخانهی پایتون برای پیداکردن همهی این کلمات استفاده کنید. و فرا خواهید گرفت که یکی از روشهای مهم در جایگزینی علاوه بر عبارت جایگزینی مستقیم از عبارت شرطی استفاده کرد. همچنین، در پایتون چاپ مقادیر به طور پیش فرض با یک خط خالی همراه است. همچنین در این مقاله نشان داده میشود که میتوان حالت پیشفرض را تغییر داد و مقادیر را در یک خط چاپ کرد.
تعریف کلید واژه یا keyword
در بخش سوم از آشنايی مقدماتی با پایتون، کلید واژهها در پایتون معرفی شد. کلمهی کلیدی، کلمهی ذخیره شدهای است که برای مفسر یا کامپایلر آن زبان برنامه نویسی معنی مشخص و معینی دارد. در حالت کلی کلید واژه ممکن است یک فرمان یا یک پارامتر باشد. اما، شناختن آنها بخشی از آموزش هر زبان برنامهنویسی از جمله پایتون است. قطعا، کلید واژه ها نمیتوانند به عنوان نام یک متغیر یا تابع استفاده شود. در زیر لیستی از کلید واژههای پایتون ثبت شدهاند آمده است:
False, elif, lambda, None, else, nonlocal, True, except, not, and, finally, or,
as, for, pass, assert, from, raise, break, global, return, class, if, try,
continue, import, while, def, in, with, del, is, yield,
چگونه بررسی کنیم که یک رشته کلید واژه است؟
پایتون یک ماژول به نام keyword دارد که عملیات خاصی را در ارتباط با کلید واژهها انجام میدهد. در این ماژول یک تابع به نام ()iskeyword دارد که با استفاده از آن میتوان چک کرد که آیا یک رشته جز کلید واژههای پایتون است یا خیر. این تابع مقدار True را برمیگرداند اگر رشته داده شده به آن یک کلید واژه باشد در غیر اینصورت مقدار False برگردانده میشود. برای روشن موضوع به مثال زیر توجه کنید:
#Python code to demonstrate working of iskeyword()
# importing "keyword" for keyword operations
import keyword
# initializing strings for testing
s = "for"
s1 = "7learn.ac"
s2 = "elif"
s3 = "elseif"
s4 = "Ali Mohammadi"
s5 = "assert"
s6 = "Avand"
s7 = "True"
s8 = "False"
s9 = "Amozesh"
s10 = "Video"
s11 = "break"
s12 = "Tehran"
s13 = "lambda"
s14 = "Covid-19"
s15 = "try"
s16 = "Labtop"
# checking which are keywords
if keyword.iskeyword(s):
print ( s + " is a python keyword")
else : print ( s + " is not a python keyword")
if keyword.iskeyword(s1):
print ( s1 + " is a python keyword")
else : print ( s1 + " is not a python keyword")
if keyword.iskeyword(s2):
print ( s2 + " is a python keyword")
else : print ( s2 + " is not a python keyword")
if keyword.iskeyword(s3):
print ( s3 + " is a python keyword")
else : print ( s3 + " is not a python keyword")
if keyword.iskeyword(s4):
print ( s4 + " is a python keyword")
else : print ( s4 + " is not a python keyword")
if keyword.iskeyword(s5):
print ( s5 + " is a python keyword")
else : print ( s5 + " is not a python keyword")
if keyword.iskeyword(s6):
print ( s6 + " is a python keyword")
else : print ( s6 + " is not a python keyword")
if keyword.iskeyword(s7):
print ( s7 + " is a python keyword")
else : print ( s7 + " is not a python keyword")
if keyword.iskeyword(s8):
print ( s8 + " is a python keyword")
else : print ( s8 + " is not a python keyword")
if keyword.iskeyword(s9):
print ( s9 + " is a python keyword")
else : print ( s9 + " is not a python keyword")
if keyword.iskeyword(s10):
print ( s10 + " is a python keyword")
else : print ( s10 + " is not a python keyword")
if keyword.iskeyword(s11):
print ( s11 + " is a python keyword")
else : print ( s11 + " is not a python keyword")
if keyword.iskeyword(s12):
print ( s12 + " is a python keyword")
else : print ( s12 + " is not a python keyword")
if keyword.iskeyword(s13):
print ( s13 + " is a python keyword")
else : print ( s13 + " is not a python keyword")
if keyword.iskeyword(s14):
print ( s14 + " is a python keyword")
else : print ( s14 + " is not a python keyword")
if keyword.iskeyword(s15):
print ( s15 + " is a python keyword")
else : print ( s15 + " is not a python keyword")
if keyword.iskeyword(s16):
print ( s16 + " is a python keyword")
else : print ( s16 + " is not a python keyword")
lseif is not a python keyword Ali Mohammadi is not a python keyword assert is a python keyword Avand is not a python keyword True is a python keyword False is a python keyword Amozesh is not a python keyword Video is not a python keyword break is a python keyword Tehran is not a python keyword lambda is a python keyword Covid-19 is not a python keyword try is a python keyword Labtop is not a python keyword
چگونه لیستی از کلید واژههای پایتون را بهدست آوریم؟
واضح است به خاطر سپردن همهی کلید واژههای پایتون امکانپذیر نیست. پایتون در ماژول keyword یک تابع به نام ()kwlist دارد که کلیه ۳۳ کلید واژههای پایتون را برای شما چاپ میکند. به کد زیر توجه کنید:
#Python code to demonstrate working of iskeyword()
# importing "keyword" for keyword operations
import keyword
# printing all keywords at once using "kwlist()"
print ("The list of keywords is : ")
print (keyword.kwlist)
The list of keywords is : ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
چگونه میتوان یک مقدار را به یک متغیر نسبت داد؟
پایتون در فرآیند یک عبارت جایگزینی یک شی ایجاد و آن را به یک نام نسبت میدهد. صرف نظر از جزییات عملکرد مفسر پایتون نسبت دادن یک مقدار به یک متغیر به دو روش انجام میشود.
روش جایگزینی مستقیم
بهکارگیری اپراتور شرطی
در ادامه با کدهای ساده این دو روش را نشان میدهیم.
روش جایگزینی مستقیم
# Python 3 code to demonstrate variable assignment
# upon condition using Direct assignment Method
# assignment variable directly
a = 5
# printing value of a
print ("The value of a is: " + str(a))
The value of a is: 5
در این مثال مقدار شی ۵ به نام a نسبت داده میشود.
بهکارگیری اپراتور شرطی:
# Python 3 code to demonstrate variable assignment
# upon condition using One liner if-else
# assignment variable using Conditional Operator
a = 1 if 20 > 10 else 0
# printing value of a
print ("The value of a is: " + str(a))
The value of a is: 1
در این روش مقدار جایگزینی بر اساس بررسی یک شرط تکخطی انجام میشود. در این شرط تکخطی اگر عبارت منطقی ۱۰<۲۰ درست باشد در متغیر مقدار ۱ در غیر اینصورت مقدار ۰ جایگزین میشود. شکل کلی روش شرط تکخطی به صورت زیر است:
variable_name = [on_true] if [expression] else [on_false]
چگونه میتوان یک مقدار بدون ایجاد یک خط جدید چاپ کرد؟
در پایتون برای چاپ مقدار یک متغیر از تابع ()print استفاده میشود. این تابع بهطور پیشفرض در انتهای چاپ یک خط جدید ایجاد میکند. به عبارت دیگر پایتون دارای یک فرمت چاپ خروجی از پیش تعریف شده است که بهطور اتوماتیک بعد از چاپ مقدار متغیر کنترل به خط بعدی منتقل میشود. اما، در C یا ++C اینطور نیست. برای مثال:
print("7learn.ac")
print("WelCome to our academy")
7learn.ac WelCome to our academy.
در برنامه نویسی، مواردی پیش میآید که نیاز است که مقادیر متغیرها پشت هم در یک خط چاپ شوند. برای حل این مساله به نسخهی استفاده شده پایتون باید توجه کرد.
پایتون ۲:
در پایتون۲ چاپ بدون خط جدید به صورت زیر است:
# Python 2 code for printing
# on the same line printing
# 7learn.ac and WelCome to our academy
# in the same line
print("7learn.ac, "),
print("WelCome to our academy")
# array
a = [1, 2, 3, 4]
# printing a element in same
# line
for i in range(4):
print(a[i]),
7learn.ac, WelCome to our academy 1 2 3 4
پایتون ۳:
در پایتون ۳ نیز برای چاپ کردن مقادیر متغیرها بدون ایجاد خط جدید به صورت زیر عمل میکنیم:
# Python 3 code for printing
# on the same line printing
# 7learn.ac and WelCome to our academy
# in the same line
print("7learn.ac, ", end =" ")
print("WelCome to our academy")
# array
a = [1, 2, 3, 4]
# printing a element in same
# line
for i in range(4):
print(a[i], end =" ")
که در این صورت خروجی مشابه کد قبل را خواهیم داشت. جمعبندی: کلید واژههای پایتون ۳۳ تا است، که برنامه نویس مجاز به استفاده از آن برای نام متغیرها نیست. پایتون دارای ماژول keyword است که از توابع و متدهای آن میتوان برای صحت اینکه نام یک متغیر جزو کلمات کلیدی هست یا نه استفاده کرد. همچنین، میتوان لیستی از کلید واژههای پایتون نیز بهدست آورد. یک روش معمول و کاربردی برای نسبت دادن یک مقدار به یک متغیر استفاده از شرط تک خطی است. همچنین، پایتون بر عکس C و ++C در چاپ مقدار متغیر به طور پیشفرض یک خط جدید ایجاد میکند. برای جلوگیری کافی است که در دستور ()print از ""=end استفاده شود. فرمان پرینت قالببندی شده در پایتون را میتوانید در اینجا مطالعه کنید.در مقالهی بعدی به موضوع ورودی و خروجی در پایتون پرداخته خواهد شد.
اگر به یادگیری بیشتر در زمینهی برنامه نویسی پایتون علاقه داری، یادگیری زبان پایتون بسیار ساده است. و با شرکت در دورهی آموزش پایتون توسعه وب در آینده میتونی اپلیکیشن موبایل و دسکتاپ بسازی و وارد حوزهی هوش مصنوعی هم شوی.
۱ دیدگاه
Mohammad Taheri۰۹ مرداد ۱۳۹۹، ۰۸:۲۰
با درود واقعا جا دارد که از زحمات و ارایه مطالب کامل و مفید تشکر و قدردانی شود . برای همین هم دعا میکنم در مسیر زندگی به نهایت درجه آرزوهای خوبتان برسید .
مطالب بسیار با توضیحات و حوصله کافی ارایه شده . من تازه وارد هستم و در حال یادگیری . به اشتباه یا درست از بین زبانهای متفاوت برنامه نویسی یک جورهایی عاشق برنامه نویسی پایتون شدم و شروع کردم به فراگیری آن . امیدوارم از تجربیات شما در این سایت بهره کافی ببرم .
با تشکر
راهنمای مقاله
تعریف کلید واژه یا keyword
چگونه بررسی کنیم که یک رشته کلید واژه است؟
چگونه لیستی از کلید واژههای پایتون را بهدست آوریم؟
چگونه میتوان یک مقدار را به یک متغیر نسبت داد؟
چگونه میتوان یک مقدار بدون ایجاد یک خط جدید چاپ کرد؟
راهنما و فهرست مقاله
تعریف کلید واژه یا keyword
چگونه بررسی کنیم که یک رشته کلید واژه است؟
چگونه لیستی از کلید واژههای پایتون را بهدست آوریم؟
چگونه میتوان یک مقدار را به یک متغیر نسبت داد؟
چگونه میتوان یک مقدار بدون ایجاد یک خط جدید چاپ کرد؟