多行文本输入到字典

Multi-line text input to dictionary

假设我从一个看起来像这样的文本文件中得到多行输入:

(empty string here)
1 -30 2 0
3 0 5 10

等等

我分析了输入并从中形成了一个列表:

lst = [[], [(1, -30), (2, 0)], [(3, 0), (5, 10)]]

假设我想创建一个字典,其中键是行号(从 1 开始),值是一个嵌套字典,其中包含元组的第一个元素作为键,第二个元素作为值:

**lst -> dict:**
dict = {'1': {}, '2': {1: -30, 2: 0}, '3': {3: 0, 5: 10}}

执行此操作的最佳(pythonic)方法是什么?现在花了几个小时试图做到这一点。 谢谢!

lst = [[], [(1, -30), (2, 0)], [(3, 0), (5, 10)]]

print( {str(i): dict(v) for i, v in enumerate(lst, 1)} )

打印:

{'1': {}, '2': {1: -30, 2: 0}, '3': {3: 0, 5: 10}}