2017-02-22 4 views
-2

こんにちは私はプログラミングには慣れていません。生徒の名前のリストを取り、クラスロールを作成するためのプログラムを作成しようとしています。名前のリストは、1つのスペースで区切られた1行に表示されます。アルファベット順です生徒のリストを並べ替える

これは私が出力を見せたいものです。

これは私の現在のコードであり、なぜエラーが発生するのか不明です。

names = input('Students: ') 

print('Class Roll') 

    output = names.sort() 

print(output) 
+0

これらのエラーが – Sayse

+1

'output = names.sort()' => 'output = sorted(names.split())'であることを少なくとも実際に教えてもらえると助かります。 'sort'はインプレースで動作し、' output'は 'None'になります –

+1

どのようなエラーがありますか?解決方法を見つけるのに役立つように[mcve]をお読みください。 – MSeifert

答えて

-1

ここ

names = names.split() 
names.sort() 
+0

これは、学生の入力に名前を入力したとしても、何も言っていないクラスロールを伴います。 – cars

+0

@cars - そうです...あなたはもはや 'output'変数を使う必要はありません。あなたの出力の名前を繰り返し処理するためにここで行うことができますが、それはコアの問題の一部ではないとわかりました – Sayse

-1

をソートするものがないので、あなたが離れて入力を分割することはありませんが、あなたのコード

  1. と私は見いくつかの問題は、入力は次のように読まれていますこれを個々の名前に分割する必要があります。
  2. sortが返されます。返り値なし

  1. 代わりに出力のnames = input('Students: ').split(' ')
  2. print(names)ように示された方法でそれらを印刷するには

EDIT

を入力コマンドを変更を行うことができます質問do

for name in names: 
    print(name) 
+0

このコードは動作しますが、[[Fred '、' Bob ']のような単一の行に出力します。質問に私はコードを見せようとしていることを示した – cars

関連する問題