列表和从文件中读取逗号分隔的元素

SS321c

这是我的代码

#course registration
list_courses=[]
for line in open("courses.txt",'r').readlines():
    list_courses.append(line.strip())
print ("Gathering course information from file: \n",list_courses)
close("courses.txt")
list_student=[]
for line in open("students.txt",'r').readlines():
    list_student.append(line.strip())
print("Here is student info: \n",list_student)
close("students.txt")

当我尝试关闭文件时,这给了我错误。如何关闭,我基本上是在读取文件内容并将它们存储在列表中。现在稍后想要关闭打开的文件。出现错误。

我根据下面的建议编辑了代码。新代码是

list_courses=[]
with open("courses.txt",'r') as myfile1:
      list_courses=myfile1.readlines()
      list_courses=[x.strip() for x in list_courses]

print ("Gathering course information from file: \n",list_courses)

list_student=[]
with open("students.txt",'r') as myfile1:
      list_student=myfile1.readlines()
      list_student=[x.strip() for x in list_student]

print("Here is student info: \n",list_student)

Courses.txt 中的信息是

cs101,C programming
cs102,Digital logic and design
cs103,Electrical engineering
cs231,IT networks
cs232,IT Workshop
cs233,IT programming
cs301,Compilers and automata
cs302,Operating Systems
cs303,Networks
cs401,Game Theory
cs402,Systems Programming
cs403,Automata
ec101,Digitization
ec102,Analog cicuit design
ec103,IP Telephony
ec201,Wireless Network
ec202,Microwave engineering
ec203,Antenna
ec301,Maths2
ec302,Theory of Circuits
ec303,PCB design
ec401,PLC programming
ec402,Scada
ec403,VLSI

当我运行代码时,我得到输出

Gathering course information from file: 

     ['cs101,C programming', 'cs102,Digital logic and design', 'cs103,Electrical engineering', 'cs231,IT networks', 'cs232,IT Workshop', 'cs233,IT programming', 'cs301,Compilers and automata', 'cs302,Operating Systems', 'cs303,Networks', 'cs401,Game Theory', 'cs402,Systems Programming', 'cs403,Automata', 'ec101,Digitization', 'ec102,Analog cicuit design', 'ec103,IP Telephony', 'ec201,Wireless Network', 'ec202,Microwave engineering', 'ec203,Antenna', 'ec301,Maths2', 'ec302,Theory of Circuits', 'ec303,PCB design', 'ec401,PLC programming', 'ec402,Scada', 'ec403,VLSI']

而不是我想要的是来自courses.txt第一行的输入cs101进入list_courses[0]和list_courses[1]进行c编程,即list_courses[0]=cs101 list_courses[1]=C编程

所以我尝试了一些方法,其中程序取一行并读取存储该行作为列表元素的行,但是在courses.txt中有一个逗号分隔两个元素,逗号分隔值应该是单独的列表元素。

英德

这对你有用:

students=[]
subject=[]
with open("students.txt","r") as f:
    for line in f.readlines():
        eachl=line.split(",")
        students.append(eachl[0])
        subject.append(eachl[1][:-1])

您将获得两个包含学生姓名的列表和另一个包含主题的列表:

学生名单将如下所示:

['cs101', 'cs102', 'cs103', 'cs231', 'cs232', 'cs233', 'cs301', 'cs302', 'cs303', 'cs401', 'cs402', 'cs403', 'ec101', 'ec102', 'ec103', 'ec201', 'ec202', 'ec203', 'ec301', 'ec302', 'ec303', 'ec401', 'ec402', 'ec40`3]

主题列表将如下所示:

['C programming', 'Digital logic and design', 'Electrical engineering', 'IT networks', 'IT Workshop', 'IT programming', 'Compilers and automata', 'Operating Systems', 'Networks', 'Game Theory', 'Systems Programming', 'Automata', 'Digitization', 'Analog cicuit design', 'IP Telephony', 'Wireless Network', 'Microwave engineering', 'Antenna', 'Maths2', 'Theory of Circuits', 'PCB design', 'PLC programming', 'Scada', 'VLSI']

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在python中读取逗号分隔的ini文件?

在python中从文件读取逗号分隔的元组

从文件中读取逗号分隔的单词

如何在春季批处理中在单个项目读取器中读取逗号分隔和管道分隔的csv文件

如何读取txt文件的内容,值以逗号分隔并将其添加到列表中?

如何在bash shell脚本中读取和分割逗号分隔的文件?

“选择列表”列表中的元素必须使用逗号分隔

如何读取以逗号分隔的文件

从文本文件读取逗号和空格分隔的数字

比较两个列表,用逗号分隔,以了解每个列表中的共同元素和不同元素

如何使用逗号分隔符和逗号分隔符读取熊猫CSV文件

正则表达式以获取文件中单词使用和分号之间的逗号分隔列表

Python3 读取带有 6 个值的文本文件,每行和列表行以逗号分隔

使用Fortran从文件中读取包含逗号分隔的浮点的行

从以逗号分隔的一列和由制表符分隔的文件中打印一个元素

从文件中读取逗号分隔的字符串列表并对 Bash 中的每个字符串执行命令

如何粘贴逗号分隔和引号中的矢量元素?

在C ++中从文本文件中读取带有逗号的逗号分隔值

Bash Read:读取逗号分隔的列表,缺少最后一个元素

使用 r 中的 fread 读取包含逗号的字段的逗号分隔 csv 文件

逗号分隔值文件的列值中的逗号-python读取问题

Django - 从逗号分隔列表创建 href 元素

C ++读取inFile,以逗号和空格分隔

转换文件夹中的文件列表...将逗号分隔转换为管道分隔

Python-读取逗号分隔文件,创建两个列表

将制表符分隔文件中的逗号分隔列表扩展为单独的行

从txt文件中读取由字符分隔的元素

在 Python 中读取以逗号分隔的值

用Ant生成逗号分隔的文件列表