从用户输入(Cicles)Python创建新列表

2024-09-28 01:24:27 发布

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

quarter1 = [0, "1-Course1", "2-Course2", "3-Course3", "4-Course4", "5-Course5"]
quarter2 = [0, "1-Course1", "2-Course2", "3-Course3", "4-Course4", "5-Course5"]

pick_q = int(raw_input("Pick a quarter: "))
    if pick_q == 1:
        assignment = 0
        courses = int(raw_input("How many courses would you like to enroll? "))
        print quarter1
        while assignment < courses:
            course = int(raw_input("Please select the course you'd like to enroll into(1-5): "))
            newlist = []
            chosen_assignment = quarter1[course]
            newlist.append(chosen_assignment) 
            assignment += 1
print newlist

所以我想让学生在一个特定的季度内注册不同的课程。我只以2个25美分为例

我遇到的问题是,我想从学生选择的课程中创建一个新列表,例如,如果他希望课程1、2和3,那么一个新列表应该能够打印“You have registered to[Course1,Course2,Course3]” 但是,当我运行这个程序并试图打印newlist时,它只会在用户在本例中输入的最后一个选择[Course3]时出现,而不会与其他以前的选择一起出现

它不一定要打印一个列表,但是用户应该能够从原始列表中选择并收集这些信息来创建新的列表。我在列表的开头加了一个0,这样用户就可以从列表索引1-5中选择一个数字。提前谢谢

我们非常感谢您的推荐


Tags: to用户列表inputraw课程intassignment
1条回答
网友
1楼 · 发布于 2024-09-28 01:24:27

基本上,newlist变量在循环中一次又一次地被初始化。您只需要在循环外声明它

quarter1 = [0, "1-Course1", "2-Course2", "3-Course3", "4-Course4", "5-ourse5"]
quarter2 = [0, "1-Course1", "2-Course2", "3-Course3", "4-Course4", "5-Course5"]
newlist = [] # Declare it outside
pick_q = int(raw_input("Pick a quarter: "))
if pick_q == 1:
    assignment = 0
    courses = int(raw_input("How many courses would you like to enroll? "))
    print quarter1
    while assignment < courses:
        course = int(raw_input("Please select the course you'd like to enroll into(1-5): "))
        chosen_assignment = quarter1[course]
        newlist.append(chosen_assignment) 
        assignment += 1
print newlist

相关问题 更多 >

    热门问题