gpt4 book ai didi

python - python3.6中if else的简化,具有多种情况

转载 作者:行者123 更新时间:2023-12-01 02:56:38 25 4
gpt4 key购买 nike

我有一个条件,用户我有一个[]。 P 是一个文件,其中包含所有已填充的变量 l、m、n ....。

然后

if a[1]  = '1':
p.l = a[2]
elif a[1] = '2':
p.m = a[2]
elif a[1] = '3':
p.n = a[2]

这些情况持续到 20-25 次

在 python 3.6 和 python 2.7 中处理这个问题的最佳方法是什么

其他信息

嗨,抱歉,解释不详细。l、m、n 等还有许多其他变量。但我必须在需要时定义它们。每个 1,2,3 等最多可能有 10-15 个,这取决于,但它们是固定的,因为这些数字不会改变,但 l,m,n 是我定义的,因此可以修改。

要点是假设我得到一个像“Hi how are you”和“Hello how are you”这样的字符串,然后我把这个字符串放在变量“a”中。然后我将字符串拆分为 a[] = ['Hi','How','Are','You'] 和 a[] = ['Hello','How,'Are','you']。两次分开的时间现在我读了

if a[1] = 'HI':
p.l = a[2]
elif a[1] = 'Hello':
p.m = a[2]
elif a[1] = 'How':
p.n = a[2]

所以这里根据 a[1] 值,我需要将 a[2] 值存储在不同的变量中。此外,a[1] 可能有 20-25 个不同的输入。根据输入,我必须将其存储在该特定变量中。

最佳答案

您可以使用字典将属性名称与setattr一起保存来设置属性。

lookup = {'1': 'l', '2': 'm', '3': 'n'}
key, value = a[1], a[2]
attribute = lookup[key]
setattr(p, attribute, value)

关于python - python3.6中if else的简化,具有多种情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44167216/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com