我的输出应该用括号括起来:
[[ken alex boz you]
[ken alex you boz]
[ken you boz alex]
[alex you ken boz]
]
我需要删除第一个[以及最后一个]。 有没有办法没有替换所有括号?
答案 0 :(得分:3)
使用字符串切片删除第一个和最后一个字符
test = '[[ken alex box you] [ken alex you boz]]'
print(test[1:-1:])
>> [ken alex box you] [ken alex you boz]
或者如果你想变得非常神秘,你可以在字符串的两边替换第一次出现的'['
test = '[[ken alex box you] [ken alex you boz]]'
print(test.replace('[', '', 1)[::-1].replace(']', '', 1)[::-1])
>> [ken alex box you] [ken alex you boz]
答案 1 :(得分:1)
或者,如果你想要两个最外面的括号之间的东西,
inds = range(0,len(th),(len(th)-1) // 4)
xunit[74] = 0
yunit[148] = 0
如果您只想删除括号,
def get_bracket_contents(s):
left = s.index('[')
right = s.rindex(']')
return s[left+1:right]
差异:
In [3]: get_bracket_contents(' [[abc][def]] ') Out[3]: '[abc][def]' In [4]: remove_outer_brackets(' [[abc][def]] ') Out[4]: ' [abc][def] '
答案 2 :(得分:0)
删除字符串的第一个和最后一个字符。只需使用切片删除它们。 这是我写的代码:
str = "[[ken alex boz you] [ken alex you boz] [ken you boz alex] [alex you ken boz]]"
req_str = str[1:len(str)-1]
print(req_str)
答案 3 :(得分:-3)
如果您确定它们将始终位于字符串的前沿和后沿,请使用lstrip
和rstrip
,如下所示:
s.lstrip('[').rstrip(']')