-4
  1. 定义一个字符串
  2. 定义字符串的长度
  3. 如果字符串 len 是偶数且右半部分与左半部分相同,则打印 true,否则 - 打印 false。

我只需要在 3 行中执行此操作,并且它必须适用于每个字符串 len 而无需更改 (3) 中的条件。

我们还没有学习或循环。它应该与切片。

请帮忙。


我试着这样做:

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(%)运算符检查偶数长度,因为第二个条件会自动处理它。

因此,您的代码如下所示:-

>>> 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 回答