Python中間テストコメント


今回は、上記のコードの2週目の最終日に、見たPython中間テストについてコメントします.全部で5つの問題の中で考えさせられる問題について話し合いましょう.

get prefix問題


「get prefix」関数を作成してください.
文字列が与えられた場合、"-"に基づいて前の文字列を返します.
print(get_prefix('BTC-KRW')) # --> BTC
この問題に触れて,ある基準で区分されたsplitを用いて,以下のコードを記述することを考えた.
def get_prefix(str):
  new = str.split('-')[0]
  return new
このほか、サイドモチベーションも見ましたが、findが使えるのか!
find()関数
find(「検索する文字」=>変数の上記文字列の括弧内にある特定の文字は、初期位置の値を見つけることができます.文字列の位置は数値で出力され、ゼロから始まります.

get find問題


「get find」関数を作成してください.
指定された文字と文字列がある場合、get find関数は、指定された文字列に表示される最初の位置を返します.
この問題は,inputとして受信したstrに対してlen()で長さを抽出し,その長さをrange()として受信し,for loopに移行することを考慮すべきである.
def get_find(char, str):
  if char not in str:
    return -1
  else:
    for i in range(len(str)):
      if char == str[i]:
        return i

find longth word問題


指定したリストで最も長い単語を見つけるために関数を完了してください.
print(find_longest_word(["PHP", "Exercises", "Backend"]))
#--> "Exercises"
この問題は私にとって少し難しいのはどのように比較したのか、私はnewという変数にinputのlistやtupleとしての最初の単語を割り当てることから始めます!
def find_longest_word(words):
  new = words[0]
  for word in words:
    if len(new) < len(word):
      new = word
    # else:
    #   new = new
  return new
このようにコードを書くと,結果は正しいが,驚くべき事実に触れた.隣に座っている同級生と話していると、同級生がsort()の方法を使っていることに気づきました!
すなわち、sort()を使用すると、リストまたは凡例のオブジェクトが標準の昇順または降順でソートされます.これで短い単語から並べ替えると、最後の長い単語sord words[1]を選んで2行で終わります!!!
隣の席の学生に感謝して私たちに新しい方法を理解させました:)