اعلان Python سیکھنے میں کون کون دلچسپی رکھتا ہے

محمدصابر

محفلین
String Literal Concatenation
دو اسٹرنگز کو ملانے کے لیے پائتھون میں خاص محنت نہیں کرنی پڑتی بلکہ اگر دو اسٹرنگز ساتھ ساتھ لکھی گئی ہیں تو پائتھون انہیں خود ہی جوڑ دیتا ہے۔ مثال

"آپ کا " "نام؟"

نتیجہ:
آپ کا نام؟

کیا اس طرح دو اسٹرنگ کونکیٹینیٹ (ضم) کرتے ہوئے پائتھون از خود درمیان میں اسپیس شامل کر دیتا ہے؟ اگر ہاں تو اس سیپریٹر کو اوور رائڈ کرنے کا کیا طریقہ ہوگا، اور اگر نہیں تو مثال کو درست کیا جانا چاہیے۔ :)
ابھی پرنٹ فنکشن چیک کیا ہے
کوڈ:
print("Hello World!",4)
تو ابن سعید والا سوال آ کھڑا ہوا ہے۔ اس کو کیسے حل کرنا ہے؟
 
یو ٹیوب پر ایم آئی ٹی کی ایک پلے لسٹ دیکھی
Introduction to Computer Science and Programming

اسکا پہلا لیکچر سنا ہے کافی عمدہ ہے اور اس میں پائتھون کو استعمال کر رہے ہیں۔جن احباب کے پاس ٹائم ہو وہ دیکھ سکتے ہیں

اس میں پائتھون کے پچھلے ورژن کو استعمال کیا گیا ہے اور دوسرا کمپیوٹر کی کچھ سوجھ بوجھ کے ساتھ زیادہ مفید ہے۔ اس کے مقابلے میں خان اکیڈیمی والا کورس زیادہ آسان ہے۔
 
بالکل یہ ایک اسپیس کے ساتھ ہیلو ورلڈ اور 4 کو ڈسپلے کر دیتی ہے۔ ہم اگر کومہ اور چار دونوں کو ہیلو ورلڈ کے ساتھ پرنٹ کرنا چاہتے ہیں تو اسے کوٹس میں ہی شامل کرکے پرنٹ کروا سکتے ہیں یا کومہ کے بعد پھر سے کوٹس میں کومہ اور پھر 4 مگر اصل بات یہ ہے کہ ہم کیا کرنا چاہ رہے ہیں اور پائتھون انٹرپریٹر کیا کرتا ہے۔ جو کام پائتھون انٹرپریٹر کرتا ہے اسے دیکھتے ہوئے ہی ہم کسی حل کی طرف جا سکتے ہیں۔
 

محمدصابر

محفلین
بالکل یہ ایک اسپیس کے ساتھ ہیلو ورلڈ اور 4 کو ڈسپلے کر دیتی ہے۔ ہم اگر کومہ اور چار دونوں کو ہیلو ورلڈ کے ساتھ پرنٹ کرنا چاہتے ہیں تو اسے کوٹس میں ہی شامل کرکے پرنٹ کروا سکتے ہیں یا کومہ کے بعد پھر سے کوٹس میں کومہ اور پھر 4 مگر اصل بات یہ ہے کہ ہم کیا کرنا چاہ رہے ہیں اور پائتھون انٹرپریٹر کیا کرتا ہے۔ جو کام پائتھون انٹرپریٹر کرتا ہے اسے دیکھتے ہوئے ہی ہم کسی حل کی طرف جا سکتے ہیں۔
یعنی یہ انٹرپریٹر درمیان میں جو سپیس دے رہا ہے وہ اس سادہ کمانڈ میں ختم نہیں ہو سکتی۔
 
یعنی یہ انٹرپریٹر درمیان میں جو سپیس دے رہا ہے وہ اس سادہ کمانڈ میں ختم نہیں ہو سکتی۔

اس کے لیے ایک اور آرگومینٹ استعمال کریں تو ختم ہو جائی گی سپیس۔

کوڈ:
>>> print("Hello World!",4,sep="")
 
Hello World!4
sep کا آرگومینٹ استعمال کرکے آپ بتا سکتے ہیں کہ دو پیرامیٹر کو کس چیز سے الگ کرکے دکھانا ہے۔ کیا آپ سپیس چاہتے ہیں یا نہیں یا کسی بھی اور چیز مثلا کومہ یا | سائن سے بھی دو پیرامیٹر کو الگ کرکے دکھا سکتے ہیں۔
 
آرگومنٹ(Argument) ایک آ زاد متغیر(variable) جسے ایک آپریٹر کے ساتھ استعمال کیا جا تا ہے یا کسی سب پرو گرام کو بھیج دیا جا تا ہے جو کسی خاص آپریشنز پر عمل درآمد کی دلیل یا آرگو منٹ کا استعمال کرتا ہے ۔

پیرامیٹر (parameter) پروگرامنگ میں ایک ایسی مقدار جو ایک متغیر(variable) کو کسی بھی عمل کی ابتدا یا پروگرام کے ذریعے ایک ایکسپریشن کا تعین کرنے سے قبل دی جاتی ہے۔
پیرامیٹر (parameter) کسی بھی فنکشن کو بھیجے جانے والے متغیر(variable) ہوتے ہیں جن کی وجہ سے فنکشن مختلف قدر(value) لوٹا سکتا ہے۔
 
Variables
متغیر(variable) مثال ہیں شناخت کنندہ (identifier) کی۔​
شناخت کنندہ (identifier) ایک نام ہے جو کسی کی شناخت یا نشاندہی کے لیے دیا جاتا ہے اور بعد میں اسی شناخت اور نشاندہی کی مدد سے اس نام کو دوبارہ استعمال کیا جا سکتا ہے۔ انگریزی کے اس لفظ کا مطلب ہی اس کے مقصد کو ظاہر کرتا ہے ، تبدیل ہونے والا ۔۔۔۔۔۔۔۔۔۔۔ متغیر ، جس کی حالت بدلتی رہتی ہے۔​

متغیر(variable) مختلف اقسام کے ڈیٹا کی مقدار کو سنبھال سکتا ہے اور یہ ڈیٹا ٹائپ(data type) کہلاتی ہیں۔​

آسان الفاظ میں​
متغیر(variable) ایک نام ہے جو کسی بھی مقدار کا حوالہ کہلاتا ہے۔ یہ ایک صندوق کی طرح ہوتا ہے جس میں چیزیں رکھی جا سکتی ہیں ، نکالی جا سکتی ہیں اور تبدیل کی جا سکتی ہیں۔ تفویضی بیان (assignment statement) سے ایک نئے متغیر بنائے جا سکتے ہیں اور انہیں مقدار مہیا کی جا سکتی ہے۔​

کوڈ:
>>> message = "What's up, Doc?"
>>> n = 17
>>> pi = 3.14159

state.png

اسے ایسے سمجھا جا سکتا ہے کہ مختلف متغیر کی حالت کو ایک تیر کے نشان سے اوپر والی تصویر میں ظاہر کیا گیا ہے۔ اس قسم کی تصویر نقشِ حالت (state diagram) کہلاتی ہے۔​

پرنٹ کے فنکشن کی مدد سے متغیر کی مقدار شائع کی جا سکتی ہے۔

کوڈ:
>>> print (message)
What's up, Doc?
>>> print (n)
17
>>> print(pi)
3.14159
 
متغیر کا نام حروف اور اعداد دونوں کے ملاپ سے بن سکتا ہے اور یہ کافی طویل بھی ہو سکتا ہے۔ کچھ حروف کو استعمال نہیں کیا جا سکتا جیسے

$

متغیر کا نام کا آغاز کسی حرف سے ہونا چاہے نہ کہ اعداد یا علامت سے ۔

متغیر کا نام کسی بھی پائتھون مختص الفاظ (keyword) سے متصادم نہیں ہونا چاہیے مثلا class

پائتھون مختص الفاظ (keyword)

پائتھون میں 31 مختص الفاظ ہیں


کوڈ:
and    as    assert    break    class    continue
def    del    elif    else    except    exec
finally    for    from    global    if    import
in    is    lambda    not    or    pass
print    raise    return    try    while    with
yield
 
بیان (Statement)
پائتھون میں بیان (Statement) ایک ہدایت ہے جسے پائتھون انٹرپریٹر چلا سکے۔ دو طرح کے بیانات اب تک ہم نے دیکھے ہیں۔

پرنٹ (print)
تفویض (assignment)

کمانڈ لائن پر تحریر کیا گیا کوئی بیان پائتھون چلانے کے بعد اگر کوئی نتیجہ ہو تو دکھا دیتا ہے۔ پرنٹ بیان کا لازمی کوئی نتیجہ نکلتا ہے جب کہ تفویضی بیان کسی متغیر کو کوئی مقدار تفویض کرنے کے کام آتا ہے۔

ایک سکرپٹ عموما بیانات کا تسلسل ہوتا ہے جسے پائتھون ایک ایک کرکے چلاتا ہے۔ مثال

کوڈ:
print (1)
x = 2
print (x)

اس کا نتیجہ یوں ظاہر ہوگا


 
اظہاریہ (Expression)
اظہاریہ (Expression) مقدار(value) ، متغیر(variable) اور عامل(operator) کا مجموعہ ہوتا ہے۔

ہر اظہاریے کو انٹرپریٹر جانچتا ہے اور پھر اس کا نتیجہ ظاہر کر دیتا ہے۔ ایک مقدار بذات خود بھی اظہاریہ ہے اور اسی طرح ایک متغیر بھی۔

اظہاریہ (Expression) کی چند مثالیں

کوڈ:
>>> 17
17
>>> x
3
>>> x + 2
5
>>> x - 3 + 4
4
>>> x * 4
12
 
Format Method
فارمیٹ میتھڈ(method) جیسا کہ نام سے ظاہر ہے فارمیٹ کے کام آئے گا مگر یہاں ایسا نہیں ہے بلکہ یہ نام اس میتھڈ کے حوالے سے ایک طرح کا دھوکہ دے رہا ہے۔ جب دیگر معلومات سے اسٹرنگ بنانی ہو تو فارمیٹ کا فنکشن کام آتا ہے۔ ایک اسٹرنگ میں تخصیصات (specifications) استعمال کی جا سکتی ہیں ، فارمیٹ کا فنکشن ان تخصیصات کو متعلقہ دلائل سے تبدیل کر دیتا ہے ۔
کوڈ:
age = 26
name = 'Sabir'
 
print('{0} is {1} years old'.format(name, age))
print('Why is {0} playing with python'.format(name))


Sabir is 26 years old
Why is Sabir playing with python
 
عامل اور زیر عمل(Operator and Operands)

عامل وہ مخصوص علامتیں ہوتی ہیں جن کی مدد سے ہم ضرب ، تقسیم ، جمع ، تفریق کے بنیادی عمل کرتے ہیں۔ جن مقداروں پر یہ عامل کام کرتے ہیں انہیں زیر عمل (operand) کہتے ہیں۔

Operators
+ جمع Addition
- منفی Subtraction
* ضرب Multiplication
/ تقسیم Division
** قوت نما Exponential
 
عملی تقدم (Order of Operations)
اگر ایک اظہاریہ (expression) میں ایک سے زیادہ عامل (operator) ہوں تو پھر اسے جانچنے کی ترتیب کا انحصار تقدمی قوانین (rules of precedence) پر ہوتا ہے۔

تقدم کی ترتیب مندرجہ ذیل ہے:
قوسین (paranthensis) سب سے زیادہ مقدم ہوتے ہیں۔
اس کے بعد قوت نما
اس کے بعد ضرب اور تقسیم
اس کے بعد جمع اور تفریق

ایک جیسی تقدیم والے عامل بائیں سے دائیں طرف جانچے جاتے ہیں۔

انگریزی میں ایک مشہور سرنامیہ یاد رکھنے کے لیے مندرجہ ذیل ہے

PEMDAS
Parentheses
Exponentiation
Multiplication
Division
Addition
Subtraction
 

الف نظامی

لائبریرین
محمدصابر : کمانڈ لائن پر پرنٹ فنکشن کی ہیلپ معلوم کریں
کوڈ:
help(print)

کوڈ:
Help on built-in function print in module builtins:
 
print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout)
 
    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file: a file-like object (stream); defaults to the current sys.stdout.
    sep:  string inserted between values, default a space.
    end:  string appended after the last value, default a newline.
چند کمانڈز چلا کر دیکھیے:
کوڈ:
print('a','b',sep='.')
print('a','b','c',sep='.')
print('a','b','c','d',sep='.')
 
Strings
اسٹرنگ میں اشاریہ (زیر نوشت) دیا جا سکتا ہے اور اس کی مدد سے کسی بھی اسٹرنگ کو مختلف حصے بخرے کیے جا سکتے ہیں۔

کوڈ:
>>> word = 'Help' + 'A'
>>> word
'HelpA'
>>> '<' + word*5 + '>'
'<HelpAHelpAHelpAHelpAHelpA>'

اگر متغیر میں ایک اسٹرنگ موجود ہے اور اسے کسی عدد سے ضرب دیں تو وہ اسٹرنگ اس عدد کے برابر بار بار شائع ہو جاتی ہے۔
 
Top