【发布时间】:2017-09-13 18:07:08
【问题描述】:
所以我有一个学校作业来创建一个 GUI,它允许我将学生添加到我创建的数据库中。我想出了如何搜索学生,但我正在努力添加学生。我需要将此数据导出到 CSV 文件。我已经成功地导出了它,但它带有逗号、语音标记和括号,这是我不想要的。这是我到目前为止不起作用的部分的代码:
def reveal(self):
firstname = ("Forename: ", self.forename_entry.get())
lastname = ("Surname: ", self.surname_entry.get())
gender_ = ("Gender: ", self.gender_entry.get())
birthdate = ("DOB: ", self.DOB_entry.get())
Student_ID = ("Student ID Number: ", self.studentID_entry.get())
home = ("Address: ", self.address_entry.get())
phone = ("Home phone number: ", self.homephone_entry.get())
group = ("Tutor Group: ", self.tutorgroup_entry.get())
school_email = ("School Email", self.sch_email_entry.get())
with open("StudentIDs.csv", "a") as f:
w = csv.writer(f, quoting = csv.QUOTE_ALL)
writeit = (['\n', firstname, '\n', lastname, '\n', gender_, '\n', birthdate, '\n', Student_ID, '\n', home, '\n', phone, '\n', group, '\n', school_email])
w.writerow(writeit)
self.invalidtext.configure(text = "Student added")
【问题讨论】:
-
(thing, other_thing)不是字符串连接;您可能对print(thing, other_thing)打印两件东西的方式感到困惑,就好像它们被一个空格连接一样。字符串连接是+(尽管你需要确保你有字符串)。 -
user2357112 通过将 ',' 替换为 '+' 我得到一个错误:TypeError: Can't convert 'tuple' object to str implicitly
-
我可以相应地看到
writeit、Edit 你的问题的输出。 注意:在用户名前使用@,以确保您的评论到达用户! -
@stovfl 哦,对不起。我是新手,我不会问很多问题。但是你的输出看起来像这样:“('Forename:','TEST15')”,“,”('Surname:','TEST15')“,”,“,('Gender:','TEST15 ')",","('DOB: ', 'TEST15')"," ","('学生证号码: ', 'TEST15')"," ","('地址: ', 'TEST15 ')",","('家庭电话号码:', 'TEST15')"," ","('导师组:', 'TEST15')"," ","('学校邮箱', ' TEST15')"
标签: python python-3.x csv