简单python程序

2024-05-19 02:51:54 发布

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

请原谅我,我对编程这个世界非常陌生。我正在尝试设计一个简单的数据输入/应答程序,用于与医疗账单相关的ICD-9代码。在

示例:

Enter ICD-9: "487.1"
Answer: "Influenza with respiratory manifestations"

Enter ICD-9 Code: "844.2"
Answer: "Cruciate Ligament Tear of Knee"

我在几分钟内就把它画出来了,但我不知道如何让程序读取一系列的数字,而不仅仅是一个数字。我还得到了ValueErrors:invalid literal for int(),基数为10:844.2,所以我使用844只是为了测试。在

文件名:icd9向导.py在

^{pr2}$

我知道这很基本。。我只需要一支箭头指向正确的方向。在

谢谢!在


Tags: 数据代码answer程序示例编程with世界
3条回答

如果您有一组预定义的要使用的数字,您可以测试是否包含在字典中:

good_numbers = {"487.1": "Influenza with respiratory manifestations",
                "844.2": "Cruciate Ligament Tear of Knee",
                "133.7": "Being awesome at code"}
running = True

while running:
    guess = raw_input('Enter ICD-9 Code: ')

    if guess in good_numbers:
        print good_numbers[guess]
    else:
        print('Invalid entry')

在Python中,int数据类型只能保存整数,没有小数部分。对于您的应用程序,由于您不需要对输入的数字进行任何实际的算术运算,所以最好将它们保存为字符串。所以根本不要调用int

number = "844"

guess = input('Enter ICD-9 Code')

请注意,我是如何更改number,以便"844"出现在引号中。这意味着它可以包含任何字符值,例如"844.2"或{}。在

还有另一种称为float的数据类型,它保存浮点值(带有小数部分的数字)。但是,这种类型不适合您的应用程序,因为您不会用这些数字进行计算。在

您可以通过使用float()而不是int()来修复ValueErrorint不能存储非整数,即数值在小数点之后的数字。在

至于剩下的问题,您应该考虑使用dictionary(请参阅python文档),ICD-9代码作为键,answer/description作为值。这样您就可以放入大量的代码和描述,而不必使用一个巨大的if和{}。请考虑通过读取文件或其他内容来填充此dictionary。在

例如(一旦你完成了口述):

number = 844.2
running = True

while running:
    guess = float(input('Enter ICD-9 Code: '))

    if guess in icd_9_dict.keys():
        print(icd_9_dict[guess])
    else:
        print('Invalid entry')

相关问题 更多 >

    热门问题