-4
  1. 文字列を定義する
  2. 文字列の長さを定義する
  3. 文字列 len が偶数で、右半分が左半分と同じ場合は true を出力し、そうでない場合は false を出力します。

私はそれを3行だけで行う必要があり、(3)の条件を変更せずにすべての文字列lenに対して機能する必要があります。

まだ学習もループもしていません。スライス付きのはずです。

助けてください。


私はそれをやろうとしました:

some_string = "bb" 
str_len = len (some_string),str(a)
if str_len%2==0 and some_string[0:a/2]==some_string[a/2:0]: print "True"
else: print "False"

しかし、何かがうまくいかなかった

4

2 に答える 2

3

あなたのコードはほとんど問題ありません。ほんの少しの改善が必要です。modulus(%)2 番目の条件で自動的に処理されるため、実際には演算子を使用して偶数の長さをチェックする必要はありません。

したがって、コードは次のようになります。

>>> def check_str(value):
        mid = len(value) / 2
        return True if value[:mid] == value[mid:] else False

>>> check_str("abab")
True
>>> check_str("abb")
False
>>> check_str("aaba")
False
于 2012-10-23T18:39:04.237 に答える
2

三項演算子を使用します:

In [38]: def ans(x):

    strs=x           # line 1
    length=len(strs) # line 2 
    print True if length%2==0 and strs[0:length/2]==strs[length/2:] else False  ## line 3
   ....:     
   ....:     

In [42]: ans("bb")
True

In [43]: ans("bbb")
False

In [44]: ans("abcabc")
True

In [45]: ans("abcdabc")
False
于 2012-10-23T18:39:13.990 に答える