Что не так с моим кодом? Я новичок в Python 3.3

def start():
    import os
    os.system("cls")
    print "*A Wise man once said “Be the change that you wish to see in the world.” This is the idea you have decided to live by and strive for in your quest for making a better world. You are Noah Vis, CEO of the tech giant GAIA and currently the richest man in the world, surpassing the likes of Bill Gates and Waren Buffet by a great margin. Born into a life of modest privilege in the state of Washington, you rapidly asserted your engineering and scientific abilities to build a global technological empire. Your first breakthrough was the F.E.H.C (Fusion Energy Hydrogen Collider). Producing sustainable energy by mashing the two hydrogen isotopes, deuterium and tritium, together at such high energies that they combiine into one atom. After the fusion, you produce a helium and a free neutron. The critical part being that helium+neutron has less mass than deuterium+tritium, and the mass is converted into purge energy. That energy is then captured as heat and used to run a traditional steam-driven turbine. This invention, emerging just as the world's oil supplies reach a critical low, becomes essential. As the middle east decended into conflict, the rest of the world rebuilded using your patents and products. For the most part, people are grateful. Still focused on making the world better, your focus turns. Do you...*"

    print "*[L]ook to the poverty of Africa as the greatest remaining blight on Earth, and resolve to try to bring it to an end, or [T]HIS HAS YET TO BE WRITTEN*"

    o1 = (input('>>'))
    if o1 =="L":
        print "*THIS IS NOT WRITTEN YET*"
    if o1 =="T"
        print "*THIS IS NOT WRITTEN YET*"
        os.system("pause >Nul")

def menu ():
    print "Menu\n"
    print "(1)Start"
    print "(2)Exit\n\n"
    choice = (input('>>'))
    if choice=="1":
        start()
    if choice=="2":
        quit()

menu()

Это просто приводит к синтаксической ошибке, и я не могу понять, почему. Ваша помощь очень ценится:-)

2 ответа

Решение

Начиная с Python 3, print больше не утверждение, а функция. Таким образом, чтобы использовать его, вы бы сделали print() вместо print,

Python 2.7:

print "Hello world!"

Python 3:

print("Hello world!")

Вы можете прочитать больше о print() Функция в документации, которая также упоминает некоторые параметры, которые вы можете включить, а также как вы можете использовать его в Python 2.x (from __future__ import print_function)


Кроме того, вы пропустили двоеточие после if o1 =="T", Может быть, просто опечатка:).

print это функция в Python 3, больше не оператор. Называйте это так, как если бы вы это делали (просто включайте скобки для каждого вызова).

Python2.x: print 'some string', Python3.x: print('some string')

Вы можете получить то же поведение в Python2.6 и выше, включив from __future__ import print_function как первый импорт вашего файла.

Другие вопросы по тегам