编辑:对不起,每个人都感到困惑。这个问题的第一个版本非常混乱,我决定删除它。用Python清理数据(用于声明)
这是我的问题了。
如何将10,000个学生姓名(文本文件)的列表翻译为可迭代的列表?
我最初说的字典,但我其实是指名单,我很抱歉。
编辑:对不起,每个人都感到困惑。这个问题的第一个版本非常混乱,我决定删除它。用Python清理数据(用于声明)
这是我的问题了。
如何将10,000个学生姓名(文本文件)的列表翻译为可迭代的列表?
我最初说的字典,但我其实是指名单,我很抱歉。
假设每个学生的名字是自己的路线,这是它听起来像,这是那么容易,因为
students = open('list-of-students.txt').readlines()
这将使students
是所有的学生都在文件中的list
。
'list(open('list-of-students.txt'))'也适用。它几乎没有比这更容易:)但我宁愿使用with-block来打开文件。 –
这取决于你想要做什么。
但是这样的事情应该工作:
with file("filename-with-students.txt") as f:
for line in f:
## now, the name "line" refers to a string containing a line in your file
第一行,with file(...) as f
,打开文件,并分配“文件描述符”这个名字f
。使用with
声明意味着它完成后会自动关闭。
第二行for line in f
利用了您可以在文件上一次一行的iterate。因此,你可以做任何你想要的字符串line
所指的。
如果你真的想建立列表,你可以使用'list(f)'。但这是迭代不需要的:) –
我真的不明白你:)“他们都指同一班”,谁是“他们”?也是“这些变量中的这些数据”? – steabert
我也有点困惑,对我来说,好像你想要一个多维字典,除非它增加了类的统计数据,那么你只需要将CSV每行分割(因为你可以定义delim)并使用'dictionary.has_key( “Statistics_1101”)'如果它没有它,则将其值加1,如果是,则增加1. –
你想要做什么?你想获得所有学生在统计班上的姓名,还是想要获得所有人登记的班级,还是想要做其他事情? – inspectorG4dget