如何使用字典来输出一个按要求输入的字典键

2024-05-13 12:46:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我对编码相当陌生,所以我不太懂术语,但我正在尝试使用这本词典。我很好奇为什么一个版本有效,而另一个却不行。当我输入第一个字典键(379048997)时,第一个代码不输出任何值,但第二个输出实际值

PeptideLibrary = {
    379048997:['D_Leu','Ile','Leu','Benz','Prop','D_Phe'],
    379050201:['D_Leu','Ile','Leu','Benz','Prop','D_3OHPhe'],
    379047420:['D_Leu','Ile','Leu','Sar','Prop','D_Phe']
}
RFID = input( "What is your RFID? : ")
print(PeptideLibrary.get(RFID))

#Input: 379048997
#Output: None

PeptideLibrary = {
    379048997:['D_Leu','Ile','Leu','Benz','Prop','D_Phe'],
    379050201:['D_Leu','Ile','Leu','Benz','Prop','D_3OHPhe'],
    379047420:['D_Leu','Ile','Leu','Sar','Prop','D_Phe']
}

print(PeptideLibrary.get(379048997))

#Output:['D_Leu','Ile','Leu','Benz','Prop','D_Phe']

第一个代码,输入379048997时无输出 第二个代码,当显式地将379048997输入到.get()函数时,输出['D\u Leu'、'Ile'、'Leu'、'Benz'、'Prop'、'D\u Phe']


Tags: 代码编码outputgetrfid术语printsar
3条回答

您的字典键是int,但是input返回str,因此您需要强制转换RFID

print(PeptideLibrary.get(int(RFID)))

尝试使用:

RFID = int(input("What is your RFID? : ")

输入返回一个字符串,379048997与“379048997”不同

你的字典键是整数input()返回一个字符串。您需要将字符串转换为整数

PeptideLibrary = {
    379048997:['D_Leu','Ile','Leu','Benz','Prop','D_Phe'],
    379050201:['D_Leu','Ile','Leu','Benz','Prop','D_3OHPhe'],
    379047420:['D_Leu','Ile','Leu','Sar','Prop','D_Phe']
}
RFID = int(input( "What is your RFID? : "))
print(PeptideLibrary.get(RFID))

相关问题 更多 >