StudentNumberとScoreが出力されなくて困っています。
コードを見る限り、そもそもこれらを出力(print)している個所はないようですが。
期待する結果はどのようなものなのでしょうか?
Like!
問題で、
新しくName,StudentNumber,Scoreの変数を持つpクラスを定義。
pを使って、変数xを作成。
xの変数Nameに任意の文字列、StudentNumberとScoreに数値をキー入力。
Nameに'end'が入力されるまで変数xを追加。
という問題でStudentNumberとScoreが出力されなくて困っています。
このサイトでこういう質問をしてはいけないと思いますが、どこが間違っていてどこが違うのか教えて下さい。
出ているエラーメッセージを入力
例)
NameError (uninitialized constant World)
または、問題・エラーが起きている画像をここにドラッグアンドドロップ
ソースコードを入力
例)
class p(object):
__slots__ = ( 'Name' , 'StudentNumber' , 'Score' )
x = p()
x.Name = input('>')
x.StudentNumber = int(input('>'))
x.Score = int(input('>'))
x = p()
top = x
x.Name = input('Name>')
x.StudentNumber = None
x.Score = None
while x.Name != 'end':
x.StudentNumber = p()
x = x.StudentNumber
x.Name = input('Name>')
x.StudentNumber = None
x = top
while x.StudentNumber!=None:
print( x.Name )
x=x.StudentNumber
ここに問題・エラーに対して試したことを記載してください。
StudentNumberとScoreが出力されなくて困っています。
コードを見る限り、そもそもこれらを出力(print)している個所はないようですが。
期待する結果はどのようなものなのでしょうか?
@baltfart
QuestionerName、StudentNumber、Scoreを入力させた後にxを初期化してしまっているので、最初の入力がなかったことになっています。
x = p()
x.Name = input('>')
x.StudentNumber = int(input('>'))
x.Score = int(input('>'))
x = p() # ←ここでxが初期化されている
ソースを見たところ処理の流れがごちゃごちゃなってる感じがします。
日本語でやりたいことを書き出してみて、上から一つずつコードに起こしてみるとやりたいことをきれいに実装できると思います。
@baltfart
Questioner