何かをコンパイラに入力しても何も印刷されないので、Pythonコードに問題があります。Pythonはwhileループで自分の入力を印刷していません
whileループを使用して、ユーザーがアルバムのアーティストとタイトルを入力できるようにするコードを作成しようとしています。それで、私はmake_album
にユーザの入力を呼んで、作成された辞書を印刷することができます。
ただし、アーティストとタイトルを入力すると、何も印刷されません。ここで
が私のpythonのコードです:
def make_album(artist_name, album_title, num_tracks = ''):
"""Return artist and album title name."""
CD1 = {'sonic': artist_name, 'his world': album_title}
CD2 = {'shadow': artist_name, 'all hail shadow': album_title}
CD3 = {'silver': artist_name, 'dream of an absolution': album_title}
if num_tracks:
CD = artist_name + ' ' + album_title + ' ' + num_tracks
else:
CD = artist_name + ' ' + album_title
return CD.title()
while True:
print("\nEnter album's artist and title: ")
print("\nEnter 'q' at anytime to quit")
a_name = input("Artist name: ")
if a_name == 'q':
break
a_title = input("Album title: ")
if a_title == 'q':
break
make_album(a_name, a_title)
formatted_album = make_album(a_name, a_title)
print(formatted_album)
誰も私が間違っていることができるものをするように任意のアイデアを持っていますか?どんなフィードバックも高く評価されます。
最後の3行を一度にインデントする必要がありますか? –
ループ内に下の3つのステートメントを入れます – Li357
title属性はどこから来たのですか?あなたはエラー(おそらくAttributeError)を取得していますか?もしそうなら、完全なトレースバック(コメントではなく、質問そのもの)でここで受け取ったエラーを再現してください。ループ内に入るために最後のステートメントをインデントする必要があると思われます。おそらく多くの問題があるので、デバッガでこれを実行する必要があります。 – Dan