关于Python词典的小问题

2024-09-28 22:04:15 发布

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

我正在为学校做家庭作业,我需要将一个变量“months”与我试图使用的字典(数字/月名)进行比较 但是,当我“启动”了没有任何作用的代码时,感谢并抱歉我的英语:]

Calendrier={1:"janvier",2:"février",3:"mars",4:"avril",5:"mai",6:'juin',
7:"juillet",8:"août",9:"septembre",10:"octobre",11:"novembre",12:"décembre"}
Volume=15500
Mois=1
Volume_Maximale=25000

while Volume<=Volume_Maximale:
    Volume=Volume*0.9+2500
    Mois=Mois+1

print("Le bassin débordera le mois de",Calendrier.values(Mois),"car il aura un volume de",Volume)

Tags: 代码字典de数字学校mars家庭作业volume
2条回答

字典是作为密钥访问的,因此只需输入:

Calendrier[Mois]

首先,在python中编程时有一些编码约定,我将“纠正”您所做的“错误”的一切(不必这样做,但仍然建议您这样做)。你知道吗

calendrier = (
    "janvier",
    "février",
    "mars",
    "avril",
    "mai",
    "juin",
    "juillet",
    "août",
    "septembre",
    "octobre",
    "novembre",
    "décembre"
)
volume = 15500
mois = 1
volume_maximale = 25000

while volume <= volume_maximale:
    volume = volume*0.9+2500
    mois = mois+1

# you have plenty possibilities to manipulate string
print("Le bassin débordera le mois de " + calendrier[mois-1] + " car il aura un volume de " + volume)

# if you are using pythoin 3.6 or later i would recommend the following
print(f"Le bassin débordera le mois de {calendrier[mois-1]} car il aura un volume de {volume}")
# its called f-string as you see you can directly write variables inside the string wrapped in curly braces
# for python 3.6 or later it is the fastes way manipulating strings

如你所见,我还编辑了一些东西。例如,你已经用了几个月的字典。它确实是合法的,但是由于月份不变,而且你不需要字典的功能,所以在这种情况下使用元组是更好的方法。您也可以使用列表,但是由于元组是不可变的,而列表是可变的,但是您不需要再次编辑列表,因此您应该使用元组。但是有一个“缺点”:变量“mois”现在需要从0开始,因为列表索引从0开始。因此,在访问“calendrier”元组时,需要从该变量中减去1以获得正确的月份。你知道吗

相关问题 更多 >