我想解决一个行程问题,行程表。
下面是我的现有代码:
import array as arr
class Solution():
def __init__(self):
pass
def printItenary(self,d):
reverse_d = dict()
for i in d:
if i and d[i]:
reverse_d[d[i]] = i
else:
print("Invalid Input")
return
for i in reverse_d:
if reverse_d[i] not in reverse_d:
starting_pt = reverse_d[i]
break;
while(starting_pt in d):
print(starting_pt,"->",d[starting_pt],end=", ")
starting_pt = d[starting_pt]
if __name__=="__main__":
d = dict()
d["Chennai"] = "Banglore"
d["Bombay"] = "Delhi"
d["Goa"] = "Chennai"
d["Delhi"] = "Goa"
obj = Solution()
obj.printItenary(d)
字符串
问题是如果我再加一行
d["Chennai"] = "Delhi"
型
然后有多个值为一个单一的项目,所以我想给予一个条件,如果多个输入是给定的,那么我将给予优先级的基础上字典的顺序,除了它不是价值是在一个死胡同(如果它是最后一站)。
所以我的问题是,如何比较字典数据并根据这些条件更新值
2条答案
按热度按时间xienkqul1#
你需要确保你处理了键不存在的边缘情况。如果你想让它不区分大小写,那么在比较中也做
str.lower()
。字符串
3b6akqbq2#
为了确定字典顺序,可以使用
ord()
函数; ord('b')> ord('a')== True字符串