3

私は自分で物事を発見するのが好きなので、可能な答えを研究するのに約4時間費やしましたが、これ以上近づくことができないようです.

文字列を受け取る関数を書いています。この文字列を使用して、スペースとダッシュを除いて各文字を記号に変換する必要があります。

私もそれ用の銀行システムを作成しようとしましたが、最初の要素を反復するだけのようです。これはリターンと関係がありますか?

def get_view(puzzle): 
  for elements in puzzle:
      new_ string = elements.replace(elements, "$")
      return new_string 

編集:試しました:

HIDDEN = "^" new_string = ""

def get_view(puzzle):
    for elements in puzzle:
    new_string = puzzle.replace(elements, HIDDEN)
    return new_string                  

そして今、それが戻ってきます

get_view("abc") 'ab^'

ウットフフフ。

4

2 に答える 2

5

と関係がありreturnます。ステートメントが検出されるreturnと、関数プロセスは終了します。したがって、for関数のループは常に最初の反復で終了します。

于 2012-10-14T00:48:44.630 に答える
0

最初に、各文字を何に変換するかを定義する必要があります。例を見てみましょう

conversion_symbols = {'a':'$','b':'#'}# 残りは自分で記入してください。

# then you have to loop over the string, give gives one character at a time, covert it and
# and add to your result string and then return the result string.

def get_view(puzzle):
  new_string = ""
  for element in puzzle:
      new_string += conversion_symbols[element]
  return new_string

これはあなたが到達しようとしていたアプローチですか?

于 2012-10-14T00:51:37.980 に答える