用Python编写:将以下信息作为表头: 学号,姓名,性别,班级,书名,作者,出版社分别用文本文件和csv文件的形式。将文件中写入三行信息,并读取文件,打印信息!
时间: 2024-05-14 09:15:54 浏览: 12
好的,我可以帮您解决这个问题。以下是解决方案。
1. 创建文本文件和CSV文件:
创建一个名为“student”的文件夹,用于存储所有的文件。在该文件夹中创建两个文件,一个名为“text_file.txt”,另一个名为“csv_file.csv”。
在文本文件中,输入以下内容作为表头:
学号,姓名,性别,班级,书名,作者,出版社
在CSV文件中,也输入相同的表头,但是用逗号分隔每一列。
在Python中,可以使用如下代码创建文件:
```python
import os
import csv
# 创建文件夹和文件
if not os.path.exists("student"):
os.mkdir("student")
with open("student/text_file.txt", "w") as f:
f.write("学号,姓名,性别,班级,书名,作者,出版社\n")
with open("student/csv_file.csv", "w", newline="") as f:
writer = csv.writer(f)
writer.writerow(["学号", "姓名", "性别", "班级", "书名", "作者", "出版社"])
```
2. 写入三行信息:
接下来,我们需要写入三行信息到文本文件和CSV文件中。这里我们以一个例子为基础,写入三行信息。
```python
import csv
# 打开文本文件,写入三行信息
with open("student/text_file.txt", "a") as f:
f.write("001,张三,男,一班,Python编程,John Smith,人民邮电出版社\n")
f.write("002,李四,女,二班,C++入门,Tom Wang,机械工业出版社\n")
f.write("003,王五,男,三班,Java实战,Lucy Liu,清华大学出版社\n")
# 打开CSV文件,写入三行信息
with open("student/csv_file.csv", "a", newline="") as f:
writer = csv.writer(f)
writer.writerow(["001", "张三", "男", "一班", "Python编程", "John Smith", "人民邮电出版社"])
writer.writerow(["002", "李四", "女", "二班", "C++入门", "Tom Wang", "机械工业出版社"])
writer.writerow(["003", "王五", "男", "三班", "Java实战", "Lucy Liu", "清华大学出版社"])
```
3. 读取文件并打印信息:
最后一步是读取文本文件和CSV文件中的信息,并打印出来。
```python
import csv
# 读取文本文件
with open("student/text_file.txt", "r") as f:
for line in f.readlines():
print(line.strip())
# 读取CSV文件
with open("student/csv_file.csv", "r") as f:
reader = csv.reader(f)
for row in reader:
print(",".join(row))
```
运行上述代码,输出如下:
```
学号,姓名,性别,班级,书名,作者,出版社
001,张三,男,一班,Python编程,John Smith,人民邮电出版社
002,李四,女,二班,C++入门,Tom Wang,机械工业出版社
003,王五,男,三班,Java实战,Lucy Liu,清华大学出版社
学号,姓名,性别,班级,书名,作者,出版社
001,张三,男,一班,Python编程,John Smith,人民邮电出版社
002,李四,女,二班,C++入门,Tom Wang,机械工业出版社
003,王五,男,三班,Java实战,Lucy Liu,清华大学出版社
```
综上所述,我们使用Python编写了一个程序,可以将给定的信息作为表头写入文本文件和CSV文件中,然后写入三行信息,最后读取文件并打印出来。这样就完成了本题的需求。