python的字典中引用了随机数,随机数却没有被找到

问题先记录或许等我学的够深了就能解决了

                          #随机数
import random

name = ["赵","钱","孙"]
number = ["1","2","3"]
number_all = ["1","2","3","4","5"]
relate = ["哥哥","弟弟","妹妹","姐姐","AR"]

name_dict = dict(zip(name,number))
relate_dict = dict(zip(number_all,relate))

print("关系是",relate_dict.get(name_dict.get("赵")))
print(type(name))

name_d = {"王":"a","李":"b","分":"c"}
relate_d = {"a":"父","b":"母","c":"鬼","d":"艳"}
print("上头是?:",relate_d.get(name_d.get("李")))


random_count = tuple(random.randint(1,5) for i in range(3))
print("随机生成的数",random_count)
name_dd = dict(zip(name,random_count))
print("你觉得?",relate_dict.get(name_dd.get("钱")))

random_count = tuple(random.randint(1,5) for i in range(3)) #随机数生成元组
print("随机生成的数",random_count)
name_dd = dict(zip(name,random_count)) #随机数+列表组成字典
print("你觉得?",relate_dict.get(name_dd.get("钱"))) #输出对应字典的值,但是好像因为有随机数不能查到?是因为一些基础问题吗?

print(name_dd)
print(type(name_dd.get("钱")))
print(relate_dict)
print(relate_dict.get('2'))
print(relate_dict.keys())
print("你觉得?", relate_dict.get(str(name_dd.get("钱"))))

你自己把key打印出来就明白了,在你调用后面随机数字key时,其实作为relate_dict的key的时候,你打印出来就发现类型不一样,这时候只能使用字符串类型

前面的number里元素是string 字符形式的 后面随机的是数字int类型 都不一样啊 怎么查? 最好用一样的

import random
name = ["赵","钱","孙"]
number = ["1","2","3"]
number_all = ["1","2","3","4","5"]
relate = ["哥哥","弟弟","妹妹","姐姐","AR"]
name_dict = dict(zip(name,number))
relate_dict = dict(zip(number_all,relate))
print("关系是",relate_dict.get(name_dict.get("赵")))
print(type(name))
name_d = {"王":"a","李":"b","分":"c"}
relate_d = {"a":"父","b":"母","c":"鬼","d":"艳"}
print("上头是?:",relate_d.get(name_d.get("李")))
 
random_count = tuple(random.randint(1,5) for i in range(3))
random_count_1 = str(random_count)
print("随机生成的数",random_count)
name_dd = dict(zip(name,random_count_1))
print("你觉得?",relate_dict.get(name_dd.get("钱")))
 



倒数第二行和倒数第四行重新给随机数定义了str类型
然后就整正常了,
(感谢两位大佬解惑 哈哈哈哈哈哈)