繁体   English   中英

使用 python,如何将新项目写入 CSV 文件中的新行

[英]Using python, how to write new item into a new row in a CSV file

形成一个 Microsoft xlsx 文件,我正在使用 python 脚本读取包含房屋地址的列。 然后,我想将其写入 CSV 文件,格式如下:

firstname_user, secondname_user, address
firstname_user, secondname_user, address
firstname_user, secondname_user, address
firstname_user, secondname_user, address

在 python 脚本下面我必须这样做

代码:

import pandas as pd
import csv

the_xl_file = "mydata.xlsx"

original_xl = pd.ExcelFile(the_xl_file).parse('Sheet1')
address_list=[]
address_list.append(original_xl['column_name'])
 
file = open('output.csv', 'w+', newline ='') 

first_name = "John"
second_name = "Doe"

with file:     
    csv_writer = csv.writer(file) 
    for address in address_list:
        # How can I switch to a new row here?
        csv_writer.writerow(first_name + ',' + second_name + ',' + address)

print(' CSV file created with addresses ... ')

问题:
上面的脚本有效。 唯一的问题是所有地址都写入一行。 这不符合格式。 我想将每个项目写在一个新行中,以便每个新行包含 first_name 后跟 last_name 后跟地址。

另一个问题是它在每个项目周围都有双引号 - “John,Doe,AddressLine1”。 我怎样才能消除或忽略“?

环境:
macOS Catalina 上的 Python 3.9.0

csv 模块中的 writerow function 将采用一个参数,该参数应为列表类型。 像这样改变写逻辑。

with open('output.csv', 'w+', newline ='') output_file:     
    csv_writer = csv.writer(output_file) 
    for address in address_list:
        csv_writer.writerow([first_name, second_name, address])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM