如何用PYTHON解决有效的括号问题

 时间:2026-02-14 04:41:16

1、打开JUPYTER NOTEBOOK,新建一个空白的PY文档。

如何用PYTHON解决有效的括号问题

2、s = "()"

if ("(" and ")" in s) or ("[" and "]" in s) or ("{" and "}" in s):

    print(True)

else:

    print(False)

很多同学会有多个IF来不断判断。

如何用PYTHON解决有效的括号问题

3、s = "(]"

if ("(" and ")" in s) or ("[" and "]" in s) or ("{" and "}" in s):

    print(True)

else:

    print(False)

但是这样容易出错也很麻烦。

如何用PYTHON解决有效的括号问题

4、s = "(]"

d = {"(": ")", "[": "]", "{": "}"}

dd = {}

for i in range(len(s)):

    dd[s[i]] = s[i+1]

print(d)

print(dd)

于是开始有了字典储存符号的方法了。

如何用PYTHON解决有效的括号问题

5、s = "(]"

d = {"(": ")", "[": "]", "{": "}"}

if (len(s) % 2 != 0) or (len(s) == 0):

    print(False)

else:

    for i in range(len(s)):

        if d[s[i]] != s[i+1]:

            print(False)

            break

        else:

            print(True)

我们首先要解决超出范围的问题。

如何用PYTHON解决有效的括号问题

6、s = "()"

d = {"(": ")", "[": "]", "{": "}"}

if (len(s) % 2 != 0) or (len(s) == 0):

    print(False)

else:

    for i in range(len(s)):

        if d[s[i]] != s[i+1]:

            print(False)

            break

        else:

            print(True)

            break

如何用PYTHON解决有效的括号问题

7、s = "({[]})"

#it should be True.

d = {"(": ")", "[": "]", "{": "}"}

if (len(s) % 2 != 0) or (len(s) == 0):

    print(False)

else:

    for i in range(len(s)):

        if d[s[i]] != s[i+1]:

            print(False)

            break

        else:

            print(True)

            break

但是我们会发现这里就出错了。

如何用PYTHON解决有效的括号问题

8、s = "({[]})"

#it should be True.

d = {'(': ')', '[': ']', '{': '}'}

if (len(s) % 2 != 0) or (len(s) == 0):

    print(False)

else:

    for i in range(len(s)):

        for j in range(1, len(s)):

            if s[i] == d[s[j]]:

                print(True)

                break

        else:

            print(False)

            break

有些同学会用两个循环来解决。

如何用PYTHON解决有效的括号问题

9、s = "()"

d = {')': '(', '}': '{', ']': '['}

temp = []

for i in s:

    if i in d and d[i] == temp[len(temp)-1]:

        temp.pop()

    else:

        temp.append(i)

if len(temp) == 0:

    print(True)

else:

    print(False)

但实际上简单的方法是要把字典的储存先更正过来。

如何用PYTHON解决有效的括号问题

10、s = ")"

d = {')': '(', '}': '{', ']': '['}

temp = []

for i in s:

    if i in d and d[i] == temp[len(temp)-1]:

        temp.pop()

    else:

        temp.append(i)

if len(temp) == 0:

    print(True)

else:

    print(False)

s = ")"

d = {')': '(', '}': '{', ']': '['}

temp = [None]

for i in s:

    if i in d and d[i] == temp[len(temp)-1]:

        temp.pop()

    else:

        temp.append(i)

if len(temp) == 0:

    print(True)

else:

    print(False)

为了不超出范围,我们一定要设置NONE。

如何用PYTHON解决有效的括号问题

如何用PYTHON解决有效的括号问题

11、s = "()"

d = {')': '(', '}': '{', ']': '['}

temp = [None]

for i in s:

    if i in d and d[i] == temp[len(temp)-1]:

        temp.pop()

    else:

        temp.append(i)

if len(temp) == 1:

    print(True)

else:

    print(False)

最后要设置长度的判断,才可以。

如何用PYTHON解决有效的括号问题

如何用PYTHON解决有效的括号问题

  • 学习通怎么完成作业考试?
  • 为什么要读大学
  • 使用dev c++编译C语言或者c++程序
  • word如何插入图片?
  • 大学生如何防范电信诈骗及校园贷
  • 热门搜索
    过户是什么意思 脚注是什么 高考什么时候出成绩 老流鼻血是什么原因 不苟言笑是什么意思 欲罢不能什么意思 酱黄瓜的腌制方法 33朵玫瑰代表什么 什么有什么有的成语 同仇敌忾是什么意思