2017-12-15 6 views
0

手順: この小さな割り当てでは、スペースで区切られた数字の文字列が与えられ、最高と最低の番号を返す必要があります。CodeWarsによるPythonの最高と最低。不明な構文エラー

例:

high_and_low("1 2 3 4 5") # return "5 1" 
high_and_low("1 2 -3 4 5") # return "5 -3" 
high_and_low("1 9 3 4 -5") # return "9 -5" 

注:

すべての数値が有効なのInt32、それらを検証する必要はありませんです。 入力文字列には常に1つ以上の数字があります。 出力文字列は、1つのスペースで区切られた2つの数字で、最も高い数字が先頭になります。ここで

は私のコードです:

def high_and_low(numbers): 
    largest = None 
    smallest = None 
    for number in numbers: 
     if number is None: 
      largest = int(number) 
     if int(number) > largest: 
      int(number) = largest 
     if number is None: 
      smallest = int(number) 
     if int(number) < smallest: 
      smallest = int(number) 
    return largest" "smallest 

は、これは私のエラーです:私はここで間違っている、世界で

File "<string>", line 20 
return largest" "smallest 
       ^
SyntaxError: invalid syntax 

何をしているのですか?

+0

を行う?文字列を返しますか? 'str.format'を使用してください。 'return '{} {}'。書式(最大、最小)' –

+1

これはかなり明白な構文エラーです。あなたはその表現が何をすると思いましたか? –

+0

@MartijnPietersは数字を反復した後、最大値と最小値を返します。 –

答えて

0

すべての数値は、スペースで区切られ、有効なint型であることを述べているので、あなたの代わりにreturn largest" "smallestの以下の手順に従ってください

[int(num)for num in numbers.split(' ')]

1

をuse-することができます:あなたが何をしようとしている

... 
res = "{} {}".format(largest, smallest) 
return res 
関連する問題