python - 如何打印列表而不是列表列表

标签 python

我正在做一个练习,其中某些类(class)根据其主题和人数被分为上级或下级。我能够获得上层和下层类别的正确分类,但我的输出似乎是一个列表列表。下面是预期的输出,它只是一个列表。我的代码基于我迄今为止在模块中学到的方法。

预期输出

['PSYCH 412', 'MATH 300', 'MATH 404', 'ENG 201', 'PSYCH 508', 'ENG 220']

有人可以帮我弄清楚如何让我的输出成为一个列表而不是列表的列表吗?谢谢。

classes = ["MATH 150", "PSYCH 111", "PSYCH 313", "PSYCH 412", "MATH 300", "MATH 404", "MATH 206", "ENG 100", "ENG 103", "ENG 201", "PSYCH 508", "ENG 220", "ENG 125", "ENG 124"]
upper = [] #empty list
lower = [] #empty list

for w in classes:
    sub = w.split()
    if "MATH" in sub and int(sub[1]) >= 300:
        upper.append(sub)
    elif "ENG" in sub and int(sub[1]) >= 200:
        upper.append(sub)
    elif "PSYCH" in sub and int(sub[1]) >= 400:
        upper.append(sub)
    else:
        lower.append(sub)

print("Upper Level Courses:", upper)

我的输出

Upper Level Courses: [['PSYCH', '412'], ['MATH', '300'], ['MATH', '404'], ['ENG', '201'], ['PSYCH', '508'], ['ENG', '220']]

最佳答案

您的解决方案很接近,只需将 w 附加到 upperlower 即可,而不是 sub:

classes = ["MATH 150", "PSYCH 111", "PSYCH 313", "PSYCH 412", "MATH 300", "MATH 404", "MATH 206", "ENG 100", "ENG 103", "ENG 201", "PSYCH 508", "ENG 220", "ENG 125", "ENG 124"]
upper = [] #empty list
lower = [] #empty list

for w in classes:
    sub = w.split()
    if "MATH" in sub and int(sub[1]) >= 300:
        upper.append(w)
    elif "ENG" in sub and int(sub[1]) >= 200:
        upper.append(w)
    elif "PSYCH" in sub and int(sub[1]) >= 400:
        upper.append(w)
    else:
        lower.append(w)

print("Upper Level Courses:", upper)

打印:

Upper Level Courses: ['PSYCH 412', 'MATH 300', 'MATH 404', 'ENG 201', 'PSYCH 508', 'ENG 220']

关于python - 如何打印列表而不是列表列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56925946/

相关文章:

python - 在 Python 中绘制和渲染多路树

python - flask /SQLAlchemy 错误 : TypeError: Incompatible collection type: [model] is not list-like

python - 如何对包含多个文件的文件夹进行多线程处理?

python - python 中集合相等的异常行为

python - 为什么这个多进程程序比它的非并发版本运行得慢?

python - 没有重叠的 Pandas rolling corr

python - Matplotlib: `pcolormesh.get_array()` 返回展平数组 - 如何取回二维数据?

Python:具有列表理解的三层嵌套

python - 查找多列总和最大的行

javascript - 使用基于 Angular js 的 UI 在 slider 上进行 Selenium 测试(python)