python - 在 Python 中格式化列表

标签 python list tuples

我是编码新手,我正在尝试创建一个项目,列出成绩百分比及其对应的字母。不过,我在格式化它以使其看起来不错时遇到了很多麻烦。这是我目前拥有的大部分代码:

(编辑以显示更多数据)

def main():
    grade_list = create_grades()
    print_list(grade_list)

def create_grades():
    grade_list = []
    for student in range(35):
        percentage_grade = round(random.uniform(50, 100), 2)
        letter_grade = get_grade(percentage_grade)
        dumb_tuple = (percentage_grade, letter_grade)
        grade_list.append(dumb_tuple)

list_title = "Grades for Class With a Cool Name"
def print_list(grade_list):
    print(list_title)
    print("{:20}".format("Grade Percentage"), "Letter Grade")
    for student in grade_list:
        print('{:10}'.format(student[0]), "{:>17}".format(student[1]))

这是结果输出:

Grades for Class With a Cool Name
Grade Percentage     Letter Grade
     93.44                 A
     99.58                 A
     67.37                D+
     79.07                C+
     64.75                 D
     79.42                C+
      97.2                 A
     73.37                 C
     86.33                 B
     83.56                 B
     98.89                 A
     68.74                D+
     76.03                 C
     63.75                 D
     77.43                C+
     51.32                 F
     53.18                 F
     61.56                D-
      65.4                 D
     94.48                 A
     85.96                 B
     92.62                A-
     90.51                A-
      91.7                A-
     50.76                 F
     67.93                D+
     52.98                 F
     81.85                B-
     60.91                D-
     84.71                 B
     63.74                 D
     61.64                D-
     74.21                 C
     97.99                 A
     72.95                C-

我现在要做的就是让字母排成一行,而不是在值加上正负值时让它们变成一条锯齿线。我知道这似乎是一个相对简单的问题,但我的谷歌研究对我没有太大帮助,因为我还不了解很多代码。任何回复都有帮助。

最佳答案

如果 pandas 适合你:

import pandas as pd
df = pd.DataFrame(grade_list, columns=['Grade Percentage', 'Letter Grade'])
print(list_title)
print(df)

关于python - 在 Python 中格式化列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58703773/

相关文章:

python - 迭代 CGI 文件中的列表并打印 html 中的值

python - 高效的元组列表比较

python - 如何配置 Django 在本地使用 Heroku Dev Postgre?

python - 无法启动新的 Django 项目

python - 二元组检测: Comparing a string with a list in order to merge certain substrings

c++ - libstdc++ 拒绝将 volatile 右值分配给 std::ignore 是错误的吗?

.net - 如何将 NHibernate 与 System.Tuple 等不可变类型一起使用?

python - 如何在 Anaconda(Jupyter 笔记本)中导入 python 自定义类

python - 将全彩色图像转换为三色图像以用于电子墨水显示

python - 将列表修剪为最大数量的元素