如何创建python字典

如何创建python字典,python,loops,dictionary,Python,Loops,Dictionary,我将如何处理这个问题,我要创建一个字典,其中个人的名字是一个键,值是一个元组,由标记列表(共10个)和等级列表组成 因此,我在一个文本文件中: 乔希 巴勃罗 那的输出应该是{Josh:([8,8,6,7,9],'A','A','C','B','A']),Pablo:([7,9,8,9,9],'A','B','A','B']) 这就是我到目前为止所做的: def课程评分(学生档案): 有什么想法吗?根据你的问题和评论,我认为你对文本和输入没有问题。那么重点是如何划分分数和等级 您可以使用zip()

我将如何处理这个问题,我要创建一个字典,其中个人的名字是一个键,值是一个元组,由标记列表(共10个)和等级列表组成

因此,我在一个文本文件中:

乔希

巴勃罗

那的输出应该是
{Josh:([8,8,6,7,9],'A','A','C','B','A']),Pablo:([7,9,8,9,9],'A','B','A','B'])

这就是我到目前为止所做的:

def课程评分(学生档案):


有什么想法吗?

根据你的问题和评论,我认为你对文本和输入没有问题。那么重点是如何划分分数和等级

您可以使用
zip()
来执行此操作

# This is an example for Josh, assuming you already have list call lines,
# lines = [(mark1, grad1), (mark2, grade2)......]
marks, grades = zip(*lines) # marks is a tuple of marks, grades is a tuple of grades.
好了


顺便说一句,
split()
函数将自动剥离
'\n'

您尝试实现此功能的内容的可能副本?您在实现过程中遇到了哪些编程问题?我尝试使用.split('/t')在空白处拆分它,但我不知道如何创建一个包含两个列表的元组,其中第一个列表是分数,第二个列表是成绩。不过,在文本文件中,我有一个问题,我该如何区分带学生姓名的一行和带学生分数和成绩的一行?@AlexRayo如果您希望看到“Josh”或“Pablo”,只需添加一个
If
语句,否则,您可以使用“If ord(line[0])>57或ord(line[0])<48`如果第一个字符不是数字,则返回true
ord()
是一个内置函数,用于查看字符的ASCII代码,thanks@AlexRayo不客气
7  A
9  B  
8  A
9  B
9  B
f = open('student.txt','r')

for line in f:
   new_line = line.strip('\n').split()
# This is an example for Josh, assuming you already have list call lines,
# lines = [(mark1, grad1), (mark2, grade2)......]
marks, grades = zip(*lines) # marks is a tuple of marks, grades is a tuple of grades.