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

文字列を繰り返してPythonで別の文字列を作成できるかどうかを確認します


2つの文字列sとtがあるとすると、文字列sを連結してtを生成できる回数を見つける必要があります。 sを使用してtを生成できない場合は、-1を返します。

したがって、入力がs ="tom" t ="tomtomtom"の場合、 "tom"を3回連結して"tomtomtom"を取得できるため、出力は3になります。

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

  • tのサイズがsのサイズで割り切れない場合は、
    • 戻り値-1
  • cnt:=(tのサイズ/ sのサイズ)の商
  • s:=scntを何度も連結します
  • sがtと同じ場合、
    • return cnt
  • 戻り値-1

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

def solve(s, t):
   if(len(t) % len(s) != 0):
      return -1;
   cnt = int(len(t) / len(s))
   s = s * cnt
   if(s == t):
      return cnt
   return -1
s = "tom"
t = "tomtomtom"
print(solve(s, t))

入力

"tom", "tomtomtom"

出力

3

  1. あるPythonファイルを別のPythonファイルで実行するにはどうすればよいですか?

    1つのPythonファイルで別のファイルを実行する方法は複数あります。 1.モジュールのように使用します。実行するファイルをインポートして、その機能を実行します。たとえば、fileB.pyをfileA.pyにインポートするとします。ただし、ファイルが同じディレクトリにあり、fileA内に書き込みます。 import fileB fileAでは、次のようにfileB内の任意の関数を呼び出すことができます。 fileB.my_func() 2.execコマンドを使用できます。 execfile('file.py') インタプリタでfile.pyファイルを実行します。 3

  2. Pythonで部分文字列が別の文字列に含まれているかどうかを確認する方法

    Pythonには、文字列が別の文字列のサブ文字列であるかどうかを検索するためのキーワード「in」があります。例 print('ello' in 'hello world')  出力 True サブストリングの最初のインデックスも必要な場合は、find(substr)を使用してインデックスを検索できます。このメソッドが-1を返す場合は、文字列に部分文字列が存在しないことを意味します。たとえば、 print("hello world".find('ello')) 出力  1 文字列「ハリーポッター:炎の