我一直在Udacity上课,然后进入我的最终项目提交。Python循环问题
我不得不通过解析一个字符串,它是创建一个数据结构: - 。
EXAMPLE_INPUT =“约翰连接到科比,黛布拉,沃尔特\约翰喜欢 播放影片:游戏,科比喜欢 玩城市审计:财政困境,超级蘑菇人。\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \梅赛德斯喜欢 发挥柯基斯岛传奇,海盗在爪哇岛,海马 冒险。\橄榄是连接到约翰,奥尔谎言。\橄榄喜欢玩 柯基斯传说,星际舰队司令。\ Debra连接到 Walter,Levi,Jennie,Robin。\ Debra喜欢玩七个Schemers, 爪哇岛的盗贼,矮人和剑。\ Walter沃尔特喜欢玩海马冒险,忍者 仓鼠,超级蘑菇人。\李维连接到奥利,约翰, 沃尔特。\李维喜欢玩柯基斯传奇,七个策士,City 审计员:财政困境。\ Ollie与斯坦福汽车公司联系, Freda,Bryant。\ Ollie奥利喜欢玩武器召唤,矮人和剑, The Movie:The Game。\ Jennie与Levi,John, Fredina, 罗宾。珍妮喜欢玩超级蘑菇人,迪nosaur晚餐,呼叫武器 。\罗宾连接到奥利。\罗宾喜欢玩的 武器,矮人和剑呼叫。\福瑞达连接到橄榄,约翰,黛布拉。\ 福瑞达喜欢玩星际舰队指挥官,忍者仓鼠,海马 冒险。“
其中我成功地做了和我的输出数据结构出来如下: -
[ '约翰',[ '科比', '德布拉', '瓦尔特'],['电影:'The Game',' Corgi','Dinosaur Diner']],['Bryant',['Olive','Ollie', 'Freda','Mercedes'],['City Comptroller:The财政困境','超级 蘑菇人]],['梅赛德斯',['沃尔特','罗宾','科比'],[' 柯基传奇','爪哇海盗','海马冒险']], ['Olive',['John','Ollie'],['柯基传奇','Starf ['Seven' Schemers','爪哇岛的海盗','矮人和剑']],['Debra',['Walter','Levi','Jennie','Robin'] ], ['Walter',['John','Levi','Bryant'],['Seahorse Adventures','Ninja 仓鼠','超级蘑菇人]],['Levi',['Ollie ','''','''','''','''','''',''''',''''','''''',''''''','''''''',''''''''''''' ,''珍妮',['Levi','约翰','弗雷达',''''''''),'罗宾'],['超级 蘑菇侠','恐龙餐厅','武器的召唤]],['Robin', ['Ollie'],['Call of Arms','Dwarves and Swords]] ],['Freda', [“橄榄”,“约翰”,“德布拉”],[“星际舰队司令”,“忍者仓鼠”, “海马历险记”]]]
的问题是,我需要定义一个过程,它查找我做过的连接的连接,但无法正常运行。嵌套循环只运行一次迭代。我不知道为什么。我尝试通过正常循环和使用范围函数。我也使用while循环,但没有任何工作。这是我下面的代码: -
def get_secondary_connections(network, user):
found=False
for entry in network:
if entry[0]==user:
connections=entry[1]
found=True
connection_of_connections=[]
i=0
while i <len(connections):
for entry in network:
if connections[i] in entry[0]:
connection_of_connections=connection_of_connections+entry[1]
i=i+1
if found == True:
return connection_of_connections
else:
return None
print get_secondary_connections(net, 'John')
您可否对您的输出数据结构进行美化?看到这些结构是如何嵌套而没有换行符和缩进是一件很痛苦的事情。你可以把它粘贴到一个在线的json格式器中。 – ashbygeek
另外,你的'我=我+ 1'以某种方式失去了缩进。 – ashbygeek
而不是列表,为什么不使用字典? – MooingRawr