没有多少人能解决的五个 Python 难题

Python   2023-04-27 09:03   329   0  

这是一个挑战——尝试解决以下 5 个 Python 编程难题,不要用谷歌或百度去搜索答案。

752ae037573e9f63812403395521bf5f38bd89.jpg

1) 幻方

幻方是包含数字 1 到 9 的 3x3 网格。每 3 个连续数字(行、列或对角线)必须加起来为 15。下面是一个有效的幻方示例:

[  [, , ],
   [, , ],
   [, , ]  ]

在这个谜题中,你得到了一个不完整的幻方。

[  [, , ],
   [, , ],
   [, , ]  ]

幻方不应该有 0。此处,0 表示您需要填写 1 到 9 之间的数字。

  • 1 到 9 每个数字只能出现一次

  • 3 个数字的每一行、每一列和对角线的和必须等于 15

def solve(incomplete_square):
    # 代码放这里
square  [  
    [, , ],
    [, , ],
    [, , ]
]
solve(square)
# [  [, , ],
#    [, , ],
#    [, , ]  ]

2) 大写一个搞砸的字典

给你一个乱七八糟的字典,里面有多个非结构化的嵌套。例如:

d  {
    : {:},
    : {
        :,
        : {
            :,
            :,
            :
        },
        : {
            : {
                : {
                    : {:}
                }
            }
        }
    }
}

编写一个函数,接受这个搞砸的字典,并返回这个字典的副本,其中所有键和值都转换为大写。

d  {
    : {:},
    : {
        :,
        : {
            :,
            :,
            :
        },
        : {
            : {
                : {
                    : {:}
                }
            }
        }
    }
}

3) 来自字符串的字典

给你一个代表字典的字符串。

string = '{"name":"rocky", "age":5, "imported":True}'

假设键值对很简单,没有嵌套的列表、字典等集合。值将只是数字(in/float)、字符串或布尔值。

在不使用 json 库、exec 或 eval 函数或任何其他内置解析器的情况下,编写一个接受此字符串的函数,并返回由该字符串表示的实际字典。

4) 迷宫中的最短路径

您将获得代表迷宫的字符串列表。

maze  [
    ,
    ,
    ,
    ,
    ,
    ,
  • 代表玩家

  • 代表一个空的空间。玩家可以站在空地上

  • #代表一堵墙。玩家不能站在墙上

  • X代表目标。如果玩家达到目标,他就会获胜。

编写一个接受这个迷宫的函数,并返回从玩家到目标的最短路径。玩家一次只能移动一步,而且只能向 4 个方向移动——向上、向下、向左和向右。该函数返回的示例:

["down", "down", "right", "right", "right", "right", "right", "down", "down", "down"]

5) 把字典转换为列表

再一次,你会得到一个混乱的、搞砸了的、有多层嵌套的字典。

d  {
    : ,
    : ,
    : {
        : ,
        : 
    },
    : {
        : {
            : {:}
        }
    }
}

编写一个函数将其中的每个嵌套字典转换为列表。输出示例:

d  [
    [, ],
    [, ],
    [, [
        [, ],
        [, ]
    ]],
    [, [
        , [
            , [, ]
        ]
    ]]
]

结论

你单凭自己的能力解决了几个难题呢?花了多长时间?

博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。
闲言碎语
贫穷限制了我那么多,为什么没有限制我的体重?
赞赏支持

如果觉得博客文章对您有帮助,异或土豪有钱任性,可以通过以下扫码向我捐助。也可以动动手指,帮我分享和传播。您的肯定,是我不懈努力的动力!感谢各位亲~