python csv操作
时间: 2023-05-20 10:03:25 浏览: 50
Python 中可以使用 csv 模块来读写 CSV 文件。以下是一个简单的例子:
```python
import csv
# 读取 CSV 文件
with open('example.csv', newline='') as csvfile:
reader = csv.reader(csvfile, delimiter=',', quotechar='"')
for row in reader:
print(', '.join(row))
# 写入 CSV 文件
with open('example.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
writer.writerow(['John Smith', 'Accounting', 'November'])
writer.writerow(['Erica Meyers', 'IT', 'March'])
```
以上代码演示了如何读取和写入 CSV 文件。在读取 CSV 文件时,我们使用 `csv.reader` 函数来创建一个 reader 对象,然后可以使用 `for` 循环逐行读取 CSV 文件中的数据。在写入 CSV 文件时,我们使用 `csv.writer` 函数来创建一个 writer 对象,然后可以使用 `writerow` 方法逐行写入数据。
相关问题
python CSV文件操作
以下是两种Python操作CSV文件的例子:
1. 将test.csv文件的内容复制到Aim.csv文件中:
```python
import pandas as pd
file = open('test.csv') # 1. 读取file中的数据
data = pd.read_csv(file) # 2. 将data写入目标文件Aim.csv中
data.to_csv('Aim.csv')
print(data)
```
2. 读取某一行和某一列对应的数据:
```python
import pandas as pd
path = 'D:\\test.csv'
with open(path) as file:
data = pd.read_csv(file)
# 读取第三行的第三列
print("职业--" + data.ix[2, 2]) # 输出:职业--程序员
```
python csv文件操作
在Python中,csv模块是用于读写csv文件的标准库。下面是csv模块的基本操作:
1. 导入csv模块:
```python
import csv
```
2. 读取csv文件:
```python
with open('file.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
```
其中,'file.csv'是要读取的csv文件名称,'r'表示读取文件。
3. 写入csv文件:
```python
with open('new_file.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(['Name', 'Age'])
writer.writerow(['Tom', '25'])
writer.writerow(['John', '30'])
```
其中,'new_file.csv'是要写入的csv文件名称,'w'表示写入文件。newline=''用于避免csv文件中每一行之间出现空行。
4. 使用csv.DictReader读取csv文件并转换为字典形式:
```python
with open('file.csv', 'r') as file:
reader = csv.DictReader(file)
for row in reader:
print(row['Name'], row['Age'])
```
其中,csv.DictReader可以将读取的csv文件数据转换为字典形式,这样就可以通过列标题访问每一行数据了。
5. 使用csv.DictWriter将字典数据写入csv文件:
```python
with open('new_file.csv', 'w', newline='') as file:
fieldnames = ['Name', 'Age']
writer = csv.DictWriter(file, fieldnames=fieldnames)
writer.writeheader()
writer.writerow({'Name': 'Tom', 'Age': '25'})
writer.writerow({'Name': 'John', 'Age': '30'})
```
其中,csv.DictWriter可以将字典数据写入csv文件,fieldnames指定列标题。writer.writeheader()用于写入列标题。