如何从 python 字符串中删除括号?

How to remove brackets from python string?

我从标题中知道您可能认为这是重复的,但事实并非如此。

for id,row in enumerate(rows):
    columns = row.findall("td")

    teamName = columns[0].find("a").text, # Lag
    playedGames = columns[1].text, # S
    wins = columns[2].text,
    draw = columns[3].text,
    lost = columns[4].text,
    dif = columns[6].text, # GM-IM
    points = columns[7].text, # P - last column

    dict[divisionName].update({id :{"teamName":teamName, "playedGames":playedGames, "wins":wins, "draw":draw, "lost":lost, "dif":dif, "points":points }})

这就是我的 Python 代码的样子。大多数代码已删除,但基本上我是从网站中提取一些信息。我将信息保存为字典。当我打印字典时,每个值周围都有一个括号 ["blbal"],这会给我的 Iphone 应用程序带来麻烦。我知道我可以将变量转换为字符串,但我想知道是否有办法直接将信息作为字符串获取。

看起来你在列表中有一个字符串:

["blbal"] 

获取字符串只是索引 l = ["blbal"] print(l[0]) -> "blbal".

如果它是一个字符串,使用 str.strip '["blbal"]'.strip("[]") 或切片 '["blbal"]'[1:-1] 如果它们始终存在。

您也可以 replace 将不需要的 text/symbol 替换为空字符串。

text = ["blbal","test"]
strippedText = str(text).replace('[','').replace(']','').replace('\'','').replace('\"','')
print(strippedText)
import re
text = "some (string) [another string] in brackets"
re.sub("\(.*?\)", "", text)
# some in brackets
# works for () and will work for [] if you replace () with [].

\(.*?\) 格式匹配括号中的一些文本,长度未指定。 \[.*?\] 格式也匹配方括号,括号内有一些文本。

输出将不包含括号和其中的文本。

如果只想匹配方括号,请将方括号替换为所选的括号,反之亦然。

要一次性匹配 ()[] 括号,请使用此格式 (\(.*?\)|\[.*?\]:) 将两个模式与 | 字符连接起来。