字符串信息未保存在日历数组中

2024-09-27 00:14:23 发布

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

我创建了一个脚本,可以让我先选择一个月,然后选择一天,然后保存一个学生的名字,但是当它循环时,以前输入的所有信息都会被删除(在同一个月选择另一天时)。我真的不知道如何保存数组上的信息。 下面是我的代码,我使用Python 3.0:

def chooseDate(dateM, day, month):
            month = [['January'], ['February'],['March'],['April'],['May'],  ['June'],['July'],['August'],['September'],['October'],['November'],['December']]


            for i in range(0,len(month)):
                if dateM in month[i]:
                    print("OK")
                    indexM = i
                    month[indexM] = [[] for _ in range(31)]

                    indexD = day - 1 

                    month[indexM][indexD] = [[str(day), name]]

                    print(month[indexM])




while True:
    choice = str(input("Y or N: "))
    if choice == 'y':
        dateM = str(input("Month: "))
        day = int(input("Day :"))
        name = str(input("Which Student? "))
        chooseDate(dateM, day, name)
    if choice == 'n':
        print(month[indexM])
        break

Tags: namein信息forinputifrangeprint
1条回答
网友
1楼 · 发布于 2024-09-27 00:14:23

保留每个新学生的名字可能会很快变得难以使用数组。您可以尝试为每个月创建一个dictionary,而不是使用day作为键,name列表作为值,而不是为每个月创建一个dictionary

january = {}
january[1] = ['Student1']
january[2] = ['Student2']

在一天中已有一个学生之后,使用append将另一个名字添加到列表中:

if 1 in january.keys():
    january[1].append('Student3')

print(january[1])
# ['Student1', 'Student3']

相关问题 更多 >

    热门问题