|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 冬雪雪冬 于 2018-8-9 19:47 编辑
我们的玩法做了一下改变:
1. 楼主不再提供答案。
2. 请大家先独立思考,再参考其他鱼油的解答,这样才有助于自己编程水平的提高。开始阶段是看不到其他人的回帖的,等答题完成,开始评分时再取消限制。
3. 鼓励大家积极答题,奖励的期限为出题后24小时内。
4. 根据答案的质量给予1~3鱼币的奖励。
题目:
这是一个奇怪的字典{"A": "B", "B": "C", "C": "D"},一个item的value是另一个item的key
编写一个函数,参数为一个字典和一个key,如果得到的value是另一个item的key则继续求value,直到value不是key为止,返回这个value。
例如:
dict1 = {"A": "B", "B": "C", "C": "D"}
fun(dict1, "A") 返回 "D"
fun(dict1, "C") 返回 "D"
注意,如果value都是其他的item的key,即形成循环则返回None
例如
dict1 = {"A": "B", "B": "C", "C": "D", "D": "A", "E": "F"}
fun(dict1, "A") 返回 None
--------------------------------------------------------------------
对大家答案的测试如下:
d1 = {"A": "B", "B": "C", "C": "D", "E": "F"}
d2 = {"A":"B", "B":"C","C":"D","D":"B"}
def f.....
print(f(d1, "A")) #链状
print(f(d1, "E")) #单独
print(f(d2, "A")) #循环 |
|