2017-05-03 2 views
0

FYI definiert, ich bin extrem neu zu Python und Programmierung im Allgemeinen, ich heruntergeladen es vor ein paar Tagen und üben eine Stunde oder so einen Tag mit einem Tutorial Buch kaufte ich auf meinem Kindle.Keep running in Name nicht auf Python 3.6

Nun zu dem Problem, ich versuche diese Übung, wo ich vom Benutzer eingegebene und dann füllen Sie es in eine Geschichte, die ich erstellt habe. Wie ein verrücktes Ding. Hier ist der Code und darunter ist der Fehler, den ich bekomme.

print('It was a (adjective) October day. The infamous (noun) was (verb) South to escape the Winter.') 

def get_adjective(): 
    """getting the adjective""" 
    adj=input('Please provide an adjective:') 
    return adj 

def get_noun(): 
    """getting the noun""" 
    noun=input('Please provide a noun:') 
    return noun 

def get_verb(): 
    """getting the verb""" 
    verb=input('Please provide a verb:') 
    return verb 

get_adjective() 
get_noun() 
get_verb() 

def putting_together(adj,noun,verb): 
    """executing story""" 
    print('It was a {} October day. The infamous {} was {} South to escape the Winter.'.format(adj,noun,verb)) 

putting_together(adj,noun,verb) 

Einige von euch vielleicht schon wissen, was falsch ist, so oder so hier ist die Botschaft, die ich dafür bekommen, wenn ich es laufen

It was a (adjective) October day. The infamous (noun) was (verb) South to escape the Winter. 

Please provide an adjective:cold 
Please provide a noun:John 
Please provide a verb:riding 
Traceback (most recent call last): 
    File "C:/Python36-32/practice.py", line 24, in <module> 
    putting_together(adj,noun,verb) 
NameError: name 'adj' is not defined 

das ist es also. Jede Hilfe wird geschätzt. Ich werde jedoch sagen, ich bin neu und bin nicht völlig vertraut mit der Sprache. Es wäre hilfreich, die Dinge zu erledigen. Danke yall.

Antwort

1

Das Problem ist, dass Sie die Werte zuweisen Sie werden von Ihrem frunctions bekommen get_adjective(), get_noun() und get_verb(). Man könnte es durch lösen:

putting_together(get_adjective(), get_noun(), get_verb()) 

oder Sie können jeden Wert einer Variablen zuweisen als @bernie in seiner Antwort hat gesagt:

adjective = get_adjective() 
noun = get_noun() 
verb = get_verb() 

putting_together(adjective, noun, verb) 
+0

Ich habe deinen ersten Vorschlag ausprobiert und er hat mir alle meine Fragen (bitte bitte ...) zweimal gestellt und die Antworten, die ich beim zweiten Mal eingegeben habe, haben funktioniert. Seltsam. – RantheMan

+0

Ich habe es! Vielen Dank! Auf zur nächsten Übung – RantheMan

1

Sie Funktionen sind wieder Dinge, verwenden sie:

adj = get_adjective() 
noun = get_noun() 
verb = get_verb() 
+0

habe ich versucht, diese vor und es hat nicht funktioniert. Wo würde ich das eingeben? – RantheMan