在单个给定字符串中追加前2个字符和后2个字符

时间:2014-05-19 12:15:25

标签: python string append character

  

both_ends

     

给定字符串s,返回由前2和后2组成的字符串   原始字符串的字符,'banana'给出'bana'但是,   如果字符串长度小于2,则返回空字符串。

我的代码:

def both_ends(string):
    for item in string:
        if len(item) < 2:
            return ["empty"]
        else:
            (item [0])(item [1]).append(item (len(item)-1))(item (len(item) -2))


string=["jelly"]
both_ended=both_ends(string)
print both_ended

错误讯息:

  File "both_ends.py", line 18, in <module>
    both_ended=both_ends(string)
  File "both_ends.py", line 14, in both_ends
    (item [0])(item [1]).append(item (len(item)-1))(item (len(item) -2))
TypeError: 'str' object is not callable

1 个答案:

答案 0 :(得分:0)

你可以更简单地使用字符串切片来实现:

def get_22(s):
    return s[:2]+s[-2:] if len(s) >=2 else ''

>>> print get_22("banana")
bana
>>> print get_22("tomato")
toto
>>> print get_22("abc")
abbc