خطأ في بناء الجملة عند الطباعة باستخدام Python 3 [نسخة مكررة]

StackOverflow https://stackoverflow.com/questions/826948

  •  05-07-2019
  •  | 
  •  

سؤال

لماذا أتلقى خطأً في بناء الجملة عند طباعة سلسلة في Python 3؟

>>> print "hello World"
  File "<stdin>", line 1
    print "hello World"
                      ^
SyntaxError: invalid syntax
هل كانت مفيدة؟

المحلول

في بايثون 3، print أصبحت وظيفة.هذا يعني أنك بحاجة إلى تضمين الأقواس الآن كما هو مذكور أدناه:

print("Hello World")

نصائح أخرى

يبدو أنك تستخدم Python 3.0، حيث لقد تحولت الطباعة إلى وظيفة قابلة للاستدعاء بدلا من البيان.

print('Hello world!')

لأنه في بايثون 3، print statement تم استبداله ب print() function, ، مع وسيطات الكلمات الرئيسية لاستبدال معظم الصياغة الخاصة لعبارة الطباعة القديمة.لذلك عليك أن تكتبها كما

print("Hello World")

لكن إذا كتبت هذا في برنامج وحاول شخص ما يستخدم Python 2.x تشغيله، فسوف يحصل على خطأ.لتجنب ذلك، من الممارسات الجيدة استيراد وظيفة الطباعة

from __future__ import print_function

الآن تعمل التعليمات البرمجية على كلا الإصدارين 2.x و3.x

راجع الأمثلة أدناه أيضًا للتعرف على وظيفة print().

Old: print "The answer is", 2*2
New: print("The answer is", 2*2)

Old: print x,           # Trailing comma suppresses newline
New: print(x, end=" ")  # Appends a space instead of a newline

Old: print              # Prints a newline
New: print()            # You must call the function!

Old: print >>sys.stderr, "fatal error"
New: print("fatal error", file=sys.stderr)

Old: print (x, y)       # prints repr((x, y))
New: print((x, y))      # Not the same as print(x, y)!

مصدر: ما الجديد في بايثون 3.0؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top