我想从mysql数据库中提取数据并将其保存在csv文件中,问题是我的数据库中存在\ n(新行)的值。我想用“”或\ n替换这些新行,我的当前代码是:
.git
我如何替换数据库中存在的新行并替换为def cauta_db(domain_ip, db_username, db_password):
db = MySQLdb.connect(host=domain_ip, user=db_username, passwd=db_password)
cur = db.cursor()
cur.execute(sql_cmd_select_db)
for database in cur.fetchall() :
cur.execute("USE {};".format( database[0]) )
cur.execute("SELECT * FROM {};".format(database[1]))
file_to_save = creaza_dir(domain_ip, database[0], database[1])
with open(file_to_save,'wb') as out:
csv_out = csv.writer(out, delimiter =';', lineterminator='\n')
for row in cur.fetchall():
csv_out.writerow(row)
或\\n
?
答案 0 :(得分:2)
您可能想查看方法 rstrip
方法rstrip()返回字符串的副本,其中所有字符均已从字符串末尾剥离(默认的空白字符)。
由于元组是不可变的,因此使用rstrip()的元组元素创建一个列表,然后将该列表转换为元组并将其写入文件:
for row in cur.fetchall():
r = []
for v in row:
r.append(v.rstrip())
row = tuple(r)
csv_out.writerow(row)