Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでの文字列の逆母音


小文字の文字列があるとします。私たちの仕事は、文字列に存在する母音を逆にすることです。したがって、文字列が「hello」の場合、母音反転後の文字列は「holle」になります。文字列「プログラミング」の場合は「prigrammong」になります

これを解決するには、次の手順に従います-

  • 文字列を取得して母音のリストを作成し、それらのインデックスも保存します
  • 母音リストを逆にする
  • set idx:=0
  • for i:=0から指定された文字列の長さ– 1
    • iがインデックスリストにある場合-
      • 母音[i]を最後の文字列に入れます
      • idx:=idx + 1
    • それ以外の場合は、string[i]を最終文字列に入れます
  • リストを文字列として返します

理解を深めるために、次の実装を見てみましょう-

class Solution:
   def reverseVowels(self, s):
      chars = list(s)
      index = []
      vowels = []
      for i in range(len(chars)):
         if chars[i] in ['a','e','i','o','u']:
         vowels.append(chars[i])
         index.append(i)
      vowels = vowels[::-1]
      final = []
      ind = 0
      for i in range(len(chars)):
      if i in index:
         final.append(vowels[ind])
         ind += 1
      else:
         final.append(chars[i])
   str1 = ""
   return str1.join(final)
ob1 = Solution()
print(ob1.reverseVowels("hello"))
print(ob1.reverseVowels("programming"))

入力

"hello"
"programming"

出力

holle
prigrammong

  1. Pythonのcasefold()文字列

    この関数は、単語の文字を小文字に変換するのに役立ちます。 2つの文字列に適用すると、文字の大文字小文字の種類に関係なく、それらの値と一致する可能性があります。 casefold()の適用 以下の例では、casefold()関数を文字列に適用すると、結果はすべて小文字で出力されます。 例 string = "BestTutorials" # print lowercase string print(" lowercase string: ", string.casefold()) 出力 上記のコードを実行すると、次の結果が得られます- Lowerca

  2. Pythonで文字列を逆にする方法は?

    文字列のスライス演算子と範囲演算子を使用して、Pythonで文字列を逆にすることができます。例: >>> 'Hello'[::-1] ‘olleH’ >>>‘Halloween’[::-1] ‘neewollaH’ []演算子は、コロン「:」で区切った3つの数値を取ることができます。 1つ目は開始インデックス、2つ目は終了インデックス、3つ目はストライドです。ここでは、ストライドを-1として指定し、他の2つは空のままにしました。これは、最初から最後まで一度に1つずつ逆方